13

这是 CPAN 的完整安装命令和输出:

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> o conf urllist http://cpan.yahoo.com/

当然,Bundle::CPAN 安装在其他依赖项上继续失败,但至少我现在有一个 YAML 0.68。

4

3 回答 3

19

这看起来很重要:

你的 urllist 是空的!可以编辑 urllist。例如,使用 'o conf urllist push ftp://myurl/'

也许 run sudo cpan,然后o conf inito conf urllist push http://cpan.yahoo.com/(例如)让你urllist理顺?然后尝试进行安装。

于 2008-12-08T21:35:15.753 回答
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
于 2008-12-09T17:47:08.147 回答
0

猜测:

sudo perl -MCPAN -e "install YAML"
于 2008-12-08T21:16:04.293 回答