perlbrew perl cpanm 错误

perlbrew perl cpanm faulty

我在 cpanm 下安装了一个模块,显然是错误的。在 perl 系统下 运行 时可见并可用,但在 perlbrew 下不可见。但是,perlbrews cpanm 表示模块已成功安装。最佳步骤?

/Users/john/perl5/perlbrew/perls/perl-5.18.2/bin/perl
/Users/john/perl5/bin/cpanm
#!/usr/bin/perl
MM: INSTALL_BASE=/Users/john/perl5
MB: --install_base "/Users/john/perl5"

Note: .pl file contains following
#!/usr/bin/env perl

perlbrew 切换后...

declare -x PERL5LIB="/Users/john/perl5/lib/perl5"
declare -x PERLBREW_BASHRC_VERSION="0.76"
declare -x PERLBREW_HOME="/Users/john/.perlbrew"
declare -x PERLBREW_MANPATH="/Users/john/perl5/perlbrew/perls/perl-5.18.2/man"
declare -x PERLBREW_PATH="/Users/john/perl5/perlbrew/bin:/Users/john/perl5/perlbrew/perls/perl-5.18.2/bin"
declare -x PERLBREW_PERL="perl-5.18.2"
declare -x PERLBREW_ROOT="/Users/john/perl5/perlbrew"
declare -x PERLBREW_VERSION="0.76"
declare -x PERL_LOCAL_LIB_ROOT="/Users/john/perl5"
declare -x PERL_MB_OPT="--install_base \"/Users/john/perl5\""
declare -x PERL_MM_OPT="INSTALL_BASE=/Users/john/perl5"

cpanm 没有安装任何模块。它只运行与您要安装的发行版打包在一起的安装程序。通过 PERL_MM_OPTPERL_MB_OPT 环境变量,您指示这些安装程序将模块安装在错误的位置。摆脱他们。

我遇到了类似的问题,无法理解如何为预期的 Perl 安装 cpanm 模块。我通过以下方式安装了 perlbrew

perlbrew --switch --notest install perl-stable

我认为 --switch 会引导我使用新的 Perl,我可以通过以下方式看到新的 Perl:

perlbrew exec perl -v | grep 'This is'

但是当我通过 运行 我的脚本时,使用 cpanm 安装模块不起作用(找不到模块):

perlbrew exec perl myscript.pl

这个 which-version-of-perl post 让我想到也许 --switch 没有达到我想要的效果。 运行 以下允许 cpanm 开始安装到预期的 Perl:

perlbrew switch perl-5.26.1