为什么我的Perl程序抱怨“无法在@INC中找到URI.pm”?

前端之家收集整理的这篇文章主要介绍了为什么我的Perl程序抱怨“无法在@INC中找到URI.pm”?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是Perl的新手.运行脚本时出现以下错误
Can't locate URI.pm in @INC (@INC contains: /usr/local/packages/perl_remote/5.6.1/lib/5.6.1/i86pc-solaris /usr/local/packages/perl_remote/5.6.1/lib/5.6.1 /usr/local/packages/perl_remote/5.6.1/lib/site_perl/5.6.1/i86pc-solaris /usr/local/packages/perl_remote/5.6.1/lib/site_perl/5.6.1 /usr/local/packages/perl_remote/5.6.1/lib/site_perl .) at (eval 2) line 3.
Compilation Failed in require at /usr/local/packages/perl_remote/5.6.1/lib/site_perl/5.6.1/HTTP/Request.pm line 3.
Compilation Failed in require at /usr/local/packages/perl_remote/5.6.1/lib/site_perl/5.6.1/LWP/UserAgent.pm line 10.
BEGIN Failed--compilation aborted at /usr/local/packages/perl_remote/5.6.1/lib/site_perl/5.6.1/LWP/UserAgent.pm line 10.
Compilation Failed in require at /usr/local/packages/perl_remote/5.6.1/lib/site_perl/5.6.1/LWP/Simple.pm line 26.
BEGIN Failed--compilation aborted at /usr/local/packages/perl_remote/5.6.1/lib/site_perl/5.6.1/LWP/Simple.pm line 26.
Compilation Failed in require at txotf_0_install.pl line 35.
BEGIN Failed--compilation aborted at txotf_0_install.pl line 35.

可能的原因是什么,以及如何让脚本工作.任何帮助将不胜感激.

解决方法

>可能你没有安装URI.它可能不会保存在您的计算机上的任何位置,也可能会“安装”在某个位置.

>如果它没有安装,那么您需要从CPAN安装它.
>如果将其保存到您的机器中,您只需要让系统知道从哪里获得它.

如果必须从CPAN安装它,则可能需要管理员权限才能将其放在列出的目录中.但CPAN将允许您将其安装到用户目录,因此您仍然可以安装它.

因此,如果您无法在@INC中列出的目录中安装模块,那么有各种方法.

> Perl 5读取一个名为PERL5LIB的环境变量.该“数组”中的任何目录都将被添加到@INC.因此$ENV {PERL5LIB}的目录结构中的任何内容都将优先于任何系统目录. (见here)
>另一种方法是每个脚本.使用lib pragma还会将指定的目录插入到@INC中. (见lib)

use lib '/path/to/URI/module';
use URI;

>最后一种方法,你可以每次运行.您可以在命令行perl -I / path / to / URI / module -e 1上使用-I开关运行perl(参见perlrun)

猜你在找的Perl相关文章