我正在尝试使用$PERL5LIB
将目录添加到我的@INC数组中。我正在使用tcsh shell并将以下命令添加到我的.cshrc脚本
set PERL5LIB = /home/user/perl5/lib/perl5
这似乎有效,直到$echo $PERL5LIB
显示添加到$PERL5LIB
变量的路径。但是运行脚本仍然会给我带来同样的错误:
Can't locate Spreadsheet/ParseExcel.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at regs_gen.pl line 55. BEGIN failed--compilation aborted at regs_gen.pl line 55.
显然$PERL5LIB
未附加到@INC数组。我已经能够使用Perl的-I命令行参数运行我的脚本,如下所示,但我正在寻找一个更方便的解决方案。
perl -I /home/user/perl5/lib/perl5 scriptname.pl
任何帮助表示赞赏!
答案 0 :(得分:1)
perl -V
资本“-V”看起来像你的朋友在perlrun中记录的那样。
它的尾随行包括%ENV和@INC的有用部分。
...
Built under linux
Compiled at Mar 1 2016 17:15:04
%ENV:
PERL5LIB="/home/ron/lib"
PERLBREW_BASHRC_VERSION="0.78"
PERLBREW_HOME="/home/ron/.perlbrew"
... (more environment variables)
@INC:
/home/ron/lib
/etc/perl
/usr/local/lib/perl/5.18.2
/usr/local/share/perl/5.18.2
... (more @INC paths)
/usr/local/lib/site_perl
.