我有RHEL32位操作系统,我已经安装了libwsman1和openwsman-perl rpm来在我的perl脚本中使用wsman查询。我安装了两个版本的perl - perl5.8.8和perl5.14.4。我的perl脚本在perl5.8.8上运行得很好,但是当我使用perl5.14.4执行它时,会给出“分段错误(核心转储)”。在我看来,模块/库并不是在两个perl版本中都可用。如果我的假设是正确的,我如何才能使它对两个perl模块都可用?我在5月份的linux系统中看到了这个问题,在那里有两个不同版本的perl可用。不过,如果我在该系统上只安装了perl5.14.4,则可以很好地工作。我尝试使用gdb获取代码转储,输出类似于-从/usr/bin/perl5.14.4...(未找到调试符号)...done读取符号。
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 ?? ()任何帮助我们都深表感谢。
谢谢..。
发布于 2014-11-11 22:13:01
不同版本的Perl不能共享XS库。如果您的供应商没有为这两个版本的Perl提供库,那么您必须自己编译它们。cpan应该为您做这些繁重的工作。
如果您不喜欢使用环境变量和perlbrew配置,那么cpan可以让您的工作变得更轻松。
https://stackoverflow.com/questions/26866767
复制相似问题