【发布时间】:2013-07-29 20:57:08
【问题描述】:
我正在尝试使用local::lib,因为我没有系统权限,并且我已经下载了本地库并使用了引导技术。
perl Makefile.PL --bootstrap
make test && make install
echo 'eval $(perl -I$HOME/perl5/lib/perl5 -Mlocal::lib)' >>~/.bashrc
之后我尝试下载模块,它存储在/home/perl5/man/man3
但是当我运行脚本时,我得到了一个错误,它似乎采用了旧路径。当我在我的系统上运行相同的命令时,它确实需要本地库并且脚本运行正常。
Can't locate Net/Patricia.pm in @INC (@INC contains: /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/5.8.8 .) at nettest.pl line 2.
BEGIN failed--compilation aborted at nettest.pl line 2.
-bash-3.2$
【问题讨论】:
-
如何运行脚本?这是另一个用户吗?显示本地库配置:
echo PATH=$PATH ; env|sort|grep PERL -
PATH=/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin 使用 Net::Patricia;我的 $pt = new Net::Patricia; $pt->add_string('192.168.0.0/25'); $pt->add_string('192.168.0.0/16');打印 $pt->match_string('192.168.0.0/24'), "\n"; perl hi.pl 我在我的实验室中使用相同的登录名,但在服务器上我在 ssh 时遇到问题,但在本地实验室系统上我的脚本工作。
-
这表明当你运行脚本时,它缺少
~/.bashrc中所做的配置。找出不执行~/.bashrc的原因。 -
如果我只运行这个 ~/.bashrc bash: /homes/de214/.bashrc: Permission denied 是不是因为对特定机器的限制。还有其他方法可以使本地库工作
-
请剪切您的 ~/.bashrc 文件并更新您的问题
标签: perl perl-module