1

我需要在 CentOS 机器上创建自定义系统范围的 perl 安装。我不想使用 perlbrew,因为我想自己更改配置变量,而且我遇到了同样的链接问题。

本质上,我无法弄清楚如何编译 perl,以便 /usr/lib64/perl5 不包含在链接器或 @INC 中。那是旧的centos版本,很烂。不管我如何编译,perl -V都会产生这样的结果:

@INC:
/usr/local/lib64/perl5
/usr/lib64/perl5/vendor_perl
/usr/local/perl5/lib/site_perl/5.16.3/x86_64-linux-thread-multi-ld
/usr/local/perl5/lib/site_perl/5.16.3
/usr/local/perl5/lib/5.16.3/x86_64-linux-thread-multi-ld
/usr/local/perl5/lib/5.16.3

然后当我运行时,我得到了像这样的疯狂库错误:undefined symbol: Perl_Gthr_key_ptr来自 /usr/lib64/perl5 中的库。

注意 PERL5LIB 对此没有影响,它是编译进去的。

谢谢。

4

1 回答 1

1

要从中删除目录@INC,您可以使用no lib. 例如,

no lib "/usr/lib64/perl5/";

将从中删除/usr/lib64/perl5/目录@INC

如需更多信息,请尝试perldoc lib

于 2013-04-18T07:19:47.990 回答