尝试使用local::lib和CPAN时出现模块安装错误



我正在尝试使用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

来自local::lib文档:

编写完shell配置文件后,一定要重新阅读它,以便将更改后的设置放入当前shell的环境中。

你忘了这么做。

说真的,安装perlbrew可以节省大量时间和麻烦。

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

  • 不再需要运行sudo来安装CPAN模块
  • 试试每月发布的新perl
  • 学习新的语言功能
  • 针对不同的perl版本测试您的生产代码
  • 不要管供应商perl(操作系统附带的那个)

相关内容

  • 没有找到相关文章

最新更新