【问题标题】:Cannot locate Config/General.pm Perl module in @INC?在 @INC 中找不到 Config/General.pm Perl 模块?
【发布时间】:2019-10-08 08:58:17
【问题描述】:

我正在运行一个使用 Config::General 的 perl 脚本。但是,当我运行脚本时,我得到了错误:

Can't locate Config/General.pm in @INC (you may need to install the Config::General module) (@INC contains: /Library/Perl/5.18/darwin-thread-multi-2level /Library/Perl/5.18 /Network/Library/Perl/5.18/darwin-thread-multi-2level /Network/Library/Perl/5.18 /Library/Perl/Updates/5.18.2/darwin-thread-multi-2level /Library/Perl/Updates/5.18.2 /System/Library/Perl/5.18/darwin-thread-multi-2level /System/Library/Perl/5.18 /System/Library/Perl/Extras/5.18/darwin-thread-multi-2level /System/Library/Perl/Extras/5.18 .) at test.pl line 6.
BEGIN failed--compilation aborted at test.pl line 6.

当我尝试自己安装它(使用'cpanm Config::General')时,我得到:

Can't write to /Library/Perl/5.18 and /usr/local/bin: Installing modules to /Users/../perl5

不确定我是否应该尝试以 root 身份安装,因为这是一台工作计算机?还有其他选择吗?

【问题讨论】:

  • 您可以将模块安装到您自己的 lib 文件夹中(例如:在您的主目录下)。 local::lib 模块可用于管理安装模块的位置以及当use 使用模块时 Perl 的位置。文档的bootstrapping technique 部分可以帮助您入门。一旦你按照这些说明设置了一个 lib 目录并修改你的环境以指向它,你就可以像往常一样使用cpanm 安装模块。

标签: perl cpan


【解决方案1】:

由于您已经使用cpanm,您可以尝试这种方法:

  1. 安装前缀为~/perl5的所有模块
cpanm -L ~/perl5 Config::General
  1. 设置@INC 以在运行程序时包含该内容,例如:
perl -I ~/perl5/lib/perl5 test.pl

路径看起来有点奇怪,但那是因为 cpan 发行版可能包含的不仅仅是 .pm 文件。

一般来说,这应该在大部分时间都有效。 :-)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-05-19
    • 2019-07-27
    • 2020-07-15
    • 1970-01-01
    • 1970-01-01
    • 2020-08-04
    • 1970-01-01
    • 2012-06-23
    相关资源
    最近更新 更多