linux - 不同的 perl verions 不共享安装的 rpms

标签 linux perl coredump openwsman

我有 RHEL 32 位操作系统,我安装了 libwsman1 和 openwsman-perl rpm 以便在我的 perl 脚本中使用 wsman 查询。我安装了两个版本的 perl - perl5.8.8 和 perl5.14.4。我的 perl 脚本在 perl5.8.8 上运行良好,但在我用 perl5.14.4 执行它时出现“段错误(核心转储)”。在我看来,模块/库对两个 perl 版本都不可用。 如果我的假设是正确的,我怎样才能使它对两个 perl 模块可用? 我在可能有两个不同版本的 perl 的 linux 系统中看到了这个问题。虽然如果我在那个系统上只有 perl5.14.4 它工作正常。 我尝试使用 gdb 获取代码转储,输出是这样的 - 从/usr/bin/perl5.14.4 读取符号...(未找到调试符号)...完成。

warning: .dynamic section for "/lib/libc.so.6" is not at the expected address

warning: difference appears to be caused by prelink, adjusting expectations

warning: .dynamic section for "/usr/lib/libgssapi_krb5.so.2" is not at the expected address

warning: difference appears to be caused by prelink, adjusting expectations

warning: .dynamic section for "/lib/libcrypto.so.6" is not at the expected address

warning: difference appears to be caused by prelink, adjusting expectations

warning: .dynamic section for "/usr/lib/libz.so.1" is not at the expected address

warning: difference appears to be caused by prelink, adjusting expectations
Reading symbols from /lib/libnsl.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /lib/libdl.so.2...(no debugging symbols found)...done.
.
.
.
.
Loaded symbols for /lib/libkeyutils.so.1
Reading symbols from /lib/libresolv.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /lib/libselinux.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/libselinux.so.1
Reading symbols from /lib/libsepol.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/libsepol.so.1
Core was generated by `perl5.14.4 openwsman_client_FAN.pl'.
Program terminated with signal 11, Segmentation fault.
#0  0x00000000 in ?? ()

非常感谢任何帮助。

谢谢...

最佳答案

不同版本的 Perl 不能共享 XS 库。如果您的供应商没有为这两个版本的 Perl 提供库,您必须自己编译它们。 cpan 应该为您完成艰苦的工作。

perlbrew如果您不喜欢一直使用环境变量和 cpan 配置,可以让您的生活更轻松。

关于linux - 不同的 perl verions 不共享安装的 rpms,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26866767/

相关文章:

Linux 核心转储太大!

linux - Ubuntu inet addr 不断变化

linux - 如何在 Linux 内核中递归读取目录的内容?

c - 查找与线路关联的区域

multithreading - Perl 脚本随着进度变慢

node.js - "node --abort-on-uncaught-exception"生成的核心转储文件位于何处?

linux - 如何使用通配符名称创建子目录,Linux

perl - 如何在 Perl 中将命令行参数视为 UTF-8?

multithreading - Perl CGI 线程

linux - 如何在 Linux 中在段错误时生成核心转储?