2008-12-08 31 views
14

下面是完整的安裝命令CPAN和輸出:我如何告訴CPAN.pm從哪裏獲取模塊?

sudo perl -MCPAN -e "install Bundle::CPAN" 
CPAN: Storable loaded ok (v2.13) 
Going to read /home/delgreco/.cpan/Metadata 
    Database was generated on Mon, 08 Dec 2008 03:27:10 GMT 
CPAN: LWP::UserAgent loaded ok (v2.033) 
CPAN: Time::HiRes loaded ok (v1.55) 
CPAN: YAML loaded ok (v0.39) 
Warning: YAML version '0.39' is too low, please upgrade! 
I'll continue but problems are *very* likely to happen. 
Your urllist is empty! The urllist can be edited. E.g. with 'o conf urllist 
push ftp://myurl/' 

Could not fetch authors/id/A/AN/ANDK/Bundle-CPAN-1.857.tar.gz 
Giving up on '/home/delgreco/.cpan/sources/authors/id/A/AN/ANDK/Bundle-CPAN-1.857.tar.gz' 
Note: Current database in memory was generated on Mon, 08 Dec 2008 03:27:10 GMT 

     ...propagated at /usr/lib/perl5/5.8.5/CPAN.pm line 3417. 

這爲我工作,謝謝...

CPAN> 0的conf urllist http://cpan.yahoo.com/

中當然,Bundle :: CPAN安裝在其他依賴項上進行失敗,但至少我現在有一個YAML 0.68。

回答

19

這看起來很重要:

 
Your urllist is empty! The urllist can be edited. E.g. with 'o conf urllist push ftp://myurl/' 

或許運行sudo cpan,然後o conf inito conf urllist push http://cpan.yahoo.com/(例如),讓您的urllist理順?然後嘗試執行安裝。

0

在猜測:

sudo perl -MCPAN -e "install YAML" 
+0

試過了......我得到:「在-e 1號線‘‘通過包’YAML」無法找到對象的方法’安裝 – Marcus 2008-12-08 21:21:38

+0

你只需輸入`cpan YAML` – 2008-12-29 20:13:22

4

當你第一次使用CPAN模塊時,你被問到了一些問題:「你準備好繼續進行交互式配置了嗎?」你可能回答「不」。已選擇默認配置選項,因此沒有配置CPAN存儲庫鏡像以供您從中提取模塊tarball。

正如其他人已經指出的那樣,您可以使用CPAN shell中的o conf urllist命令來配置該選項。

我個人偏好創建一個「miniCPAN」,這是一個本地存儲庫,基本上包含每個模塊的最新版本(遠小於拉動所有CPAN,其中包含每個模塊的許多過時版本)。爲此,請配置CPAN鏡像存儲庫以臨時使用,從中安裝CPAN :: Mini模塊,然後使用將安裝的minicpan命令行程序來創建存儲庫。現在使用o conf urllist pop刪除您配置的CPAN鏡像,然後o conf urllist push file:/// path/to/your/minicpan告訴CPAN模塊從現在開始從本地鏡像安裝。您可以將minicpan命令放在cron中以定期更新,或者只需要刷新即可從命令行運行它。

的minicpan命令的格式是

minicpan -l /path/to/your/local/minicpan-repository -r http://example.com/url/of/CPAN/mirror 
相關問題