41

我已经开始使用perlbrew并安装了 perl-5.12.2。

我知道我需要重新安装我的 CPAN 模块,所以我切换到我的新 Perl 版本(perlbrew switch perl-5.12.2hash -r),验证切换成功(perl -v)然后尝试安装一些模块(File::Copy::Recursive使用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

4

2 回答 2

39

安装 perlbrew 后,您可以通过以下命令安装 cpanm:

perlbrew install-cpanm

否则,每次在 perlbrew 上切换 Perl 版本时,都需要手动安装 cpanm。只需使用此命令一次。

安装后,您可以使用它cpanm来安装缺少的模块:

cpanm File::Copy::Recursive
于 2013-03-01T11:59:11.083 回答
1

使用“cpan”和“cpanm”应该一切正常,也就是说:当使用 perlbrew 切换 perl 时,cpan 会看到您使用的版本的已安装模块。

虽然 cpanm 确实是与 perlbrew 一起使用的推荐工具,但 cpan 允许测试报告,所以这是我一直使用的。

于 2015-02-03T08:23:49.957 回答