2012-02-05 115 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),它就按預期工作。