如何阻止cpan每次重新配置? +更多

时间:2010-06-12 03:22:17

标签: perl cpan

我在Mac上运行(版本10.6.3),并且很难理解我的Perl安装情况。

我让系统从我之前的mac上复制一下,我似乎安装了第二个perl,它出现在我的路径的前面。我无法告诉(或记住)我是否可能使用fink,macports或CPAN安装它或者是什么。

type -a cpan
cpan is /opt/local/bin/cpan
cpan is /usr/bin/cpan

我看到两个古怪的东西。 (首先!)当我运行cpan,并让它在~lcuff / .cpan中配置时,每次运行它时,都要重新配置,给出消息:

抱歉,我们必须重新运行CPAN.pm的配置对话框 一些缺失的参数......

此外,当我尝试安装File :: Find :: Rule(因此我可以根据常见问题解答列出我的CPAN模块)时,我最终得到一条错误消息,我无法解密或Google解决方案:< / p>

Use of inherited AUTOLOAD for non-method Digest::SHA::shaopen() is deprecated at /opt/local/lib/perl5/vendor_perl/5.8.9/darwin-2level/Digest/SHA.pm line 55.
Catching error: "Can't locate auto/Digest/SHA/shaopen.al in \@INC (\@INC contains: /sw/lib/perl5 /sw/lib/perl5/darwin /opt/local/lib/perl5/site_perl/5.8.9/darwin-2level /opt/local/lib/perl5/site_perl/5.8.9 /opt/local/lib/perl5/site_perl /opt/local/lib/perl5/vendor_perl/5.8.9/darwin-2level /opt/local/lib/perl5/vendor_perl/5.8.9 /opt/local/lib/perl5/vendor_perl /opt/local/lib/perl5/5.8.9/darwin-2level /opt/local/lib/perl5/5.8.9 /Users/lcuff) at /opt/local/lib/perl5/vendor_perl/5.8.9/darwin-2level/Digest/SHA.pm line 55\cJ" at /opt/local/lib/perl5/5.8.9/CPAN.pm line 359
    CPAN::shell() called at /opt/local/bin/cpan line 198

2 个答案:

答案 0 :(得分:1)

我上周刚刚第一次迁移到新的Mac,包括从fink和系统perl切换到MacPorts和自定义perl,所以我记得很痛苦......

正如Schwern所说,/opt/local是MacPorts的默认安装位置; fink使用/sw

我确实遇到过与CPAN配置类似的问题,尽管我没有尝试确定它是否可重复。

我第一次运行CPAN配置时,它说我在~/.cpan有一个现有的CPAN目录,并将配置存储在那里。

第二次,它希望在~/Library/Application Support/.cpan配置为现有的CPAN目录。我不想重复CPAN配置,所以我爆发了,快速做了cd ~/Library/Application Support/.cpan ; rm -rf .cpan ; ln -s ~/.cpan .,从那时起它对我很有用。

希望这至少可以帮助您指明正确的方向。

答案 1 :(得分:0)

看看Perlbrew

Perlbrew允许您在~/perl5的主目录下安装和管理Perl的多个版本

安装很简单:

 curl -LO http://xrl.us/perlbrew
 chmod +x perlbrew
 ./perlbrew install

并按照说明操作。

过去几个月在Mac OSX上使用它,它就像一个魅力!

/ I3az /