如何在使用 perlbrew 时安装 CPAN 模块?
Posted
技术标签:
【中文标题】如何在使用 perlbrew 时安装 CPAN 模块?【英文标题】:How do I install CPAN modules while using perlbrew? 【发布时间】:2011-04-13 14:32:46 【问题描述】:我已经开始使用perlbrew
并安装了 perl-5.12.2。
我知道我需要重新安装我的 CPAN 模块,所以我切换到我的新 Perl 版本(perlbrew switch perl-5.12.2
和 hash -r
),确认切换成功(perl -v
)然后尝试安装一些模块(@ 987654325@ 使用 cpan
。但是,cpan
说 `File::Copy::Recursive 是最新的 (0.38)。
当我使用此模块启动 Perl 脚本时,它会喊出Can't locate File/Copy/Recursive.pm in @INC ...
(显示许多perl-5.12.2
位置)。当我切换回我的“正常”Perl (perlbrew off
) 时,脚本运行良好。
有什么建议吗?也许 CPAN 不适用于 perlbrew
?
【问题讨论】:
【参考方案1】:安装 perlbrew 后,您可以通过以下命令安装 cpanm:
perlbrew install-cpanm
否则,每次在 perlbrew 上切换 Perl 版本时,您都需要手动安装 cpanm。只需使用此命令一次。
安装后,您可以使用cpanm
安装缺少的模块:
cpanm File::Copy::Recursive
【讨论】:
顺便说一句,如果你不知道(因为我不知道),cpanm 是 cpan 的替代品,它与 perlbrew 配合得更好。如上所述安装后,您可以使用,例如“cpanm install File::Copy::Recursive”等 @JoshuaRichardson:通知cpanm install
将尝试安装install
模块。因为cpanm
没有这样的命令:Usage: cpanm [options] Module [...]
【参考方案2】:
使用“cpan”和“cpanm”应该一切正常,也就是说:当用 perlbrew 切换 perl 时,cpan 会看到您使用的版本的已安装模块。
虽然 cpanm 确实是与 perlbrew 一起使用的推荐工具,但 cpan 允许测试报告,所以这是我一直使用的。
【讨论】:
以上是关于如何在使用 perlbrew 时安装 CPAN 模块?的主要内容,如果未能解决你的问题,请参考以下文章
在 OSX Mojave 上安装 DateTime 时遇到问题