Perl CPAN 在尝试安装 nipe 时找不到 CPAN/Author.pm...

Posted

技术标签:

【中文标题】Perl CPAN 在尝试安装 nipe 时找不到 CPAN/Author.pm...【英文标题】:Perl CPAN Can't locate CPAN/Author.pm... when trying to install nipe 【发布时间】:2020-11-07 14:44:20 【问题描述】:

我正在尝试在我的 Windows 机器上安装“nipe”,但我一直收到此错误代码。我已经安装了草莓 Perl。

这是错误代码:

Can't locate CPAN/Author.pm in @INC (you may need to install the CPAN::Author module) (@INC contains: /usr/lib/perl5/site_perl /usr/share/perl5/site_perl /usr/lib/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/perl5/core_perl /usr/share/perl5/core_perl) at /usr/share/perl5/core_perl/CPAN.pm line 19.
BEGIN failed--compilation aborted at /usr/share/perl5/core_perl/CPAN.pm line 19.
Compilation failed in require at /usr/share/perl5/core_perl/App/Cpan.pm line 290.
BEGIN failed--compilation aborted at /usr/share/perl5/core_perl/App/Cpan.pm line 290.
Compilation failed in require at /c/Strawberry/perl/bin/cpan line 7.
BEGIN failed--compilation aborted at /c/Strawberry/perl/bin/cpan line 7.

【问题讨论】:

虽然您可能安装了 Strawberry Perl,但您使用的不是perl/c/Strawberry/perl/bin/cpan 使用您的PATH 中的第一个perl,这不是您安装的Strawberry Perl。看来您正在使用一些 unix 仿真(Cygwin?MSYS?WSL?)并使用该仿真中的perl。您的目标是使用 SP 还是 unix 仿真的 perl?如果是后者,请指定您使用的是哪个 unix 仿真。无论哪种方式,请提供有关此nipe 的信息。 我不知道我正在使用仿真。 perl 网站建议 windows 用户使用草莓 perl。这是github nipe repo github.com/GouveaHeitor/nipe 正在使用 Windows 控制台。你看到C:\...>了吗? 是的。我正在使用标准的命令提示符 shell 【参考方案1】:

虽然您可能安装了 Strawberry Perl,但您使用的不是perlC:\Strawberry\perl\bin\cpan 使用您的PATH 中的第一个perl,这不是您安装的Strawberry Perl。看来您正在使用一些 unix 仿真(Cygwin?MSYS?)并使用该仿真中的 perl

要使用 perl 的 Strawberry Perl 构建,您可以调整您的 PATH,以便 SP 位于您最终使用的 perl 之前,或者您可以使用

C:\Strawberry\perl\bin\perl C:\Strawberry\perl\bin\cpan Try::Tiny Config::Simple JSON

C:\Strawberry\perl\bin\perl -MCPAN -e"install @ARGV" Try::Tiny Config::Simple JSON

代替

cpan Try::Tiny Config::Simple JSON

同样,如果不调整路径,则需要使用

C:\Strawberry\perl\bin\perl nipe.pl ...

代替

perl nipe.pl ...

【讨论】:

我执行了 perl C:\Strawberry\perl\bin\cpan Try::Tiny Config::Simple JSON,它似乎工作:加载内部记录器。推荐使用 Log::Log4perl 以更好地记录 CPAN:CPAN::SQLite 加载正常(v0.217)数据库于 2020 年 7 月 17 日星期五 20:10:15 GMT 生成 CPAN:Module::CoreList 加载正常(v5.20200314)尝试::Tiny 是最新的 (0.30)。 Config::Simple 是最新的 (4.58)。 JSON 是最新的 (4.02)。 (第二次执行后)但我知道什么?我仍然无法使用 perl nipe.pl install 命令 这不是我提到的替代方案之一。我不知道使用了哪个perl。 /// Re "我还是不能使用perl nipe.pl install 命令",如果你不说明你遇到了什么问题,我也无能为力。请注意,如果这是一个新问题,您应该将其作为一个新问题发布。 非常感谢您的帮助。忘记了你没有被告知上下文。 您是说问题中的消息来自perl nipe.pl install?如果是这样,请先调整您的 PATH,以便 SP 排在第一位(或至少在您的其他 perl 之前)。【参考方案2】:

如果您使用的是 windows 和 bash,请在应用来自 @ikegami 的更改后尝试使用 cmd 或 powershell。我花了一些时间才弄清楚,更改此终端的路径没有效果,因为它仍然采用来自 /usr//perl5/

的路径

【讨论】:

对我来说也是如此:在 cmd 上它只是工作,而在 git bash 上没有成功。

以上是关于Perl CPAN 在尝试安装 nipe 时找不到 CPAN/Author.pm...的主要内容,如果未能解决你的问题,请参考以下文章

在 XAMPP for Windows 上从 CPAN 安装 perl 模块

如何在使用 perlbrew 时安装 CPAN 模块?

perl cpan 安装与 GIT Perl cpan 安装冲突我该如何纠正?

如何在 Cygwin 上从 CPAN 安装 Net::SSH2

centos环境下使用CPAN安装perl模块

卸载 cpan 安装的所有 perl 模块