我在我的机器上运行了perl并且发出了命令
perl -e 'print("@INC\n");'
我得到了这个输出
/usr/local/lib/perl5/site_perl/5.18.1/x86_64-linux /usr/local/lib/perl5/site_perl/5.18.1
/usr/local/lib/perl5/5.18.1/x86_64-linux /usr/local/lib/perl5/5.18.1 .
但正常工作的MACHINE会产生以下输出 同样的命令
/usr/local/lib64/perl5 /usr/local/share/perl5/usr/lib64/perl5/vendor_perl
/usr/share/perl5/vendor_perl/usr/lib64/perl5 /usr/share/perl5 .
你可以看到lib&的DIFF INT PATH lib64下
我怎样才能纠正上述情况? 请帮忙
答案 0 :(得分:1)
Perl预安装在每台Linux机器上 - 也许正常工作的机器使用库存perl。您可以在命令行中标识perl
可执行文件which perl
的位置。
此外,您可以通过运行perl -v
来检查perl版本 - 如果正在运行的计算机上的perl较旧,则可能是操作系统perl。
关于操纵lib路径的方法,请看看Gabor Szabo撰写的有关How to change @INC to find Perl modules in non-standard locations
的教程