当我使用 cpan 安装模块时,有一个下载源非常不稳定和缓慢,我可能想在多台机器上安装该模块?
是否可以将 perl 模块存储库更改为其他地址,或者将存储库复制到本地磁盘。
或者,我们可以在使用cpan时将本地模块文件保存到本地吗?似乎cpan会在安装后将其删除。
是否可以将 perl 模块存储库更改为其他地址
您可以通过运行 CPAN shell 重新配置 cpan(并更改您的镜像):
perl -MCPAN -eshell
然后输入:
o conf init
或将存储库复制到本地磁盘。
CPAN Mini是这方面的常用工具。
您可以设置一个 CPAN::Mini 存储库。您需要安装CPAN::Mini
,并提供一个配置文件.minicpanrc
。我的很短:
# contents of .minicpanrc in home directory
local: /home/ebaudrez/mirrors/minicpan
remote: http://cpan.cu.be/
显然,您需要根据您的安装对其进行调整。您可以在此处找到 CPAN 镜像列表。然后你必须通过调用创建本地镜像
minicpan
注意:第一次,这将需要相当长的时间。预计会消耗几 GB 的存储空间。后续调用会快得多。它发现每天多次调用它是没有意义的。另请注意,仅保留分发的最后一个版本,旧的或已删除的分发将从您的本地存储库中删除。
最后,您可以告诉cpanm
优先使用您的镜像,并且仅当您所追求的特定发行版或版本在您的本地镜像中不可用时才故障恢复到真实 CPAN:
PERL_CPANM_OPT="--mirror $HOME/mirrors/minicpan --mirror http://search.cpan.org/CPAN"
也可以将 CPAN 或 CPANPLUS 配置为使用您的镜像,但我发现这样做不太方便,并且无论如何更喜欢 cpanminus。
现在您可以安装您想要使用的任何发行版/版本cpanm
,例如,
cpanm Dist::Zilla; # enjoy as the dependencies fly by ;-)
或者说,PDL 版本 2.006(注意:撰写本文时的最新版本是 2.007 ;-))
cpanm PDL@2.006 # note: that is new syntax since cpanminus 1.6
如果可用,将使用本地镜像中的内容。全局 CPAN 将用于后备。
我很惊讶没有人添加如何编辑默认 CPAN 配置。与编辑小文本文件相比,使用 CPAN shell 来做这件事简直太疯狂了。
这是如何做到的:
$HOME/.cpan/CPAN/MyConfig.pm
MyConfig.pm
urllist
,并将您的 URL 添加到其中。'urllist' => [
q[http://httpupdate3.cpanel.net/CPAN/],
q[http://mirrors.servercentral.net/CPAN/],
q[ftp://cpan.cse.msu.edu/]
],