-1

我正在尝试使用local::lib,因为我没有系统管理员权限,我想下载并安装本地库。我跑了以下:

perl Makefile.PL --bootstrap

make test && make install

echo 'eval $(perl -I$HOME/perl5/lib/perl5 -Mlocal::lib)' >>~/.bashrc

在此之后,我尝试通过运行通过 cpan 下载模块,perl -MCPAN -e shell install netAddr::IP但是当我运行我的程序时,它给出了一个错误:

Can't locate NetAddr/IP.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 agha.pl line 8.
BEGIN failed--compilation aborted at agha.pl line 8.

我认为这意味着模块没有安装......所以我再次尝试通过 CPAN,但现在给出了一个错误(这是在 Linux 中):

-bash-3.2$ perl -MCPAN -e shell

There seems to be running another CPAN process (pid 15611).  Contacting...
Other job is running.
You may want to kill it and delete the lockfile, maybe. On UNIX try:
kill 15611
rm /homes/ar312/.cpan/.lock
4

2 回答 2

1

来自local::lib 文档

编写完您的 shell 配置文件后,请务必重新阅读它以将更改后的设置放入您当前的 shell 环境中。

你忘了这样做。

于 2013-07-14T11:55:53.710 回答
0

说真的,通过安装perlbrew可以为自己节省大量时间和麻烦。

perlbrew 是一个在你的 $HOME 目录中管理多个 perl 安装的工具。它们是完全孤立的 perl 宇宙。这种方法有很多好处:

  • 不再需要运行 sudo 来安装 CPAN 模块。
  • 试试每月发布的新 perls。
  • 学习新的语言功能。
  • 针对不同的 perl 版本测试您的生产代码。
  • 不理会供应商 perl(操作系统附带的那个)
于 2013-07-13T17:56:06.313 回答