2012-02-05 72 views
5

这是我的问题。我正在运行OS   X   v10.7(Lion),并且想要设置一个我写过的旧Perl程序(然后使用Windows系统,然后使用ActivePerl,然后使用它的ppm)。OS X的Perl和CPAN升级帮助

我读过使用CPAN来安装Perl模块(我正在尝试安装Graph模块)。每当我尝试安装它时,都会因拒绝连接而失败。为什么?所以,我读了我应该运行更新CPAN并修复任何损坏的链接如下:

cpan> install Bundle:CPAN 
cpan> reload cpan 
cpan> index cpan 
cpan> exit 

但是,这样做之后,我坚持每次都与我尝试做一个CPAN安装或升级:

New CPAN.pm version (v1.9800) available. 
    [Currently running version is v1.9456] 
    You might want to try 
    install CPAN 
    reload cpan 
    to both upgrade CPAN.pm and run the new version without leaving 
    the current session. 

我试图使用OS   X中包含的默认Perl东西,而不是下载ActivePerl。我如何修复CPAN并安装Graph Module? PS:运行安装CPAN并重新加载CPAN没有做任何事情,但它产生了相同的消息。

UPDATE 我能够通过终端升级到v1.9800做手动安装(制作,安装)。但我仍然无法安装Graph Module。下面是我得到:

http://cloud.jjnford.com/3D1C1H4217222b1p1O3a

更新 - 问题解决了 我终于能够解决的问题。我只是将/User/jj/.cpan目录移动到User/jj/.cpan_bak,然后重新配置CPAN并安装了Graph Module,没有大惊小怪。

+0

您正在使用哪个版本的Perl?你正在更新系统提供的Perl,还是你自己的建筑? – 2012-02-05 06:56:26

+0

@Jonahan我正在使用系统提供的Perl版本。我能够通过手动CPAN安装并重新配置来解决问题。可能只是和旧版本和Lion问题。尽管感谢你的兴趣。 – jjNford 2012-02-05 06:59:05

+0

请谨慎对待更改系统安装。我还没有特别听说过Perl模块升级会破坏事情,但是我很久以前就决定让系统Perl保持独立并且只修改由我构建的Perl版本中的模块并且与系统分开安装Perl的。也许这是(哎!)15岁的偏执狂。但是我要么保持不变地使用系统Perl,要么使用我的“自制的”Perl;我不会冒险修改系统Perl。 – 2012-02-05 07:45:30

回答

5

要解决此问题,请手动升级CPAN(显然,在OS   X CPAN无法自行升级)。您可以从here下载源代码。在你下载它之后解压缩它,从Perl脚本创建make文件,然后运行一个make测试,最后如果make install一切顺利的话。

$> tar -xvxf CPAN-1.9800 
$> cd CPAN-1.9800 
$> perl Makefile.PL 
$> make 
$> make test 
$> make install 

现在,摆脱旧的CPAN配置:

$> mv ~/.cpan ~/.cpan.bak 

现在,当您从您应该配置再次提示终端运行CPAN。一旦完成并CPAN已经开始,你会发现这一点:

cpan shell -- CPAN exploration and modules installation (v1.9800) 

所以CPAN现已升级和工作,在我的情况下,我安装了Graph Module

$cpan> install Graph 

,一切工作正常。我希望这有助于某人。

+0

完美的说明。谢谢! – Darrel 2012-07-13 23:03:59

+0

伟大的指示 - 并没有解决我的问题。 – capikaw 2013-10-08 03:32:09

+0

@capikaw这个解决方案来自一年前。操作系统或其他软件的更新可能会造成问题。抱歉。 – jjNford 2013-10-14 18:29:38

4

我知道这个问题已经解决了,但是下次考虑使用“cpanminus”。它速度更快,可以为您节省很多麻烦。您可以安装应用程序:使用cpanminus cpanminus(参见:App::cpanminus):

curl -L http://cpanmin.us | perl - --sudo App::cpanminus 

然后再安装任何模块及其依赖简单地运行:

cpanm <module> 

另外,您可以从网上直接使用它:

curl -L http://cpanmin.us | perl - --sudo <module> 

我用我的OS   X Lion中,它完美的作品:)

+0

此外,我不会更改系统的本地Perl。考虑使用[perlbrew](https://metacpan.org/module/perlbrew) – Amir 2012-02-05 08:08:18

4

我有一个新鲜的Mac OS X Lion和我更新CPAN没有问题。

安装XCode是不够的。 make,gcc,g ++默认不安装。

要安装它们,必须: 启动XCode,转至XCode-> Preferences->下载并安装名为“命令行工具”的组件。

0

请原谅我回复这个旧帖子。

我和OP有同样的问题。一旦我纠正命令包含两个冒号而不是一个(即 - Bundle :: CPAN vs Bundle:CPAN),它就按预期工作。