首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在@INC中找不到Math/Random/ISAAC.pm

在@INC中找不到Math/Random/ISAAC.pm
EN

Stack Overflow用户
提问于 2012-06-29 22:43:24
回答 3查看 3.6K关注 0票数 3

这是bugzilla的一个版本,已经升级到新的共享主机服务器(仍然运行Linux)。有关完整的错误信息,请参阅post底部。

代码语言:javascript
复制
./checksetup.pl does not complain of any missing modules and completes successfully

~/perl5/lib/perl5中有许多本地perl模块,包括下面报告缺失的模块。

perl -V报告以下环境变量值(在此输出中,NB已将主文件夹的根目录替换为~)

代码语言:javascript
复制
 %ENV:
    PERL5LIB="/~/perl5/lib/perl5/x86_64-linux-thread-multi:/~/perl5/lib/perl5:/~/perl5/lib/perl5/x86_64-linux-thread-multi:/~/perl5/lib/perl5"
    PERL_MM_OPT="INSTALL_BASE=/~/perl5"
  @INC:
    /~/perl5/lib/perl5/x86_64-linux-thread-multi
    /~/perl5/lib/perl5/x86_64-linux-thread-multi
    /~/perl5/lib/perl5
    /~/perl5/lib/perl5/x86_64-linux-thread-multi
    /~/perl5/lib/perl5/x86_64-linux-thread-multi
    /~/perl5/lib/perl5
    /usr/local/lib64/perl5
    /usr/local/share/perl5
    /usr/lib64/perl5/vendor_perl
    /usr/share/perl5/vendor_perl
    /usr/lib64/perl5
    /usr/share/perl5

任何帮助都将不胜感激。Bugzilla会忽略PERL5LIB环境变量吗?

代码语言:javascript
复制
Full error message is:
Can't locate Math/Random/ISAAC.pm in @INC (@INC contains: . lib /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at Bugzilla/RNG.pm line 28.
BEGIN failed--compilation aborted at Bugzilla/RNG.pm line 28.
Compilation failed in require at Bugzilla/Util.pm line 50.
BEGIN failed--compilation aborted at Bugzilla/Util.pm line 50.
Compilation failed in require at Bugzilla/Error.pm line 33.
BEGIN failed--compilation aborted at Bugzilla/Error.pm line 33.
Compilation failed in require at Bugzilla/Install/Filesystem.pm line 31.
BEGIN failed--compilation aborted at Bugzilla/Install/Filesystem.pm line 31.
Compilation failed in require at Bugzilla/Config.pm line 38.
BEGIN failed--compilation aborted at Bugzilla/Config.pm line 38.
Compilation failed in require at Bugzilla.pm line 38.
BEGIN failed--compilation aborted at Bugzilla.pm line 38.
Compilation failed in require at index.cgi line 34.
BEGIN failed--compilation aborted at index.cgi line 34.
EN

回答 3

Stack Overflow用户

发布于 2014-04-08 05:47:54

这个答案适用于Windows,但您也可以将其改编为适用于Linux。

Math::Random::ISAAC

1.下载 Math-Random-ISAAC-1.004.tar.gz

cpan 2.在控制台上打开“”控制台

3.转到下载的文件路径

草莓C:>cd C:\草莓\cpan

随机数学- C:\strawberry\cpan>cd -艾萨克-1.004

4. perl Makefile.PL

C:\strawberry\cpan\Math-Random-ISAAC-1.004>perl Makefile.PL

为Math::Random::ISAAC编写Makefile编写MYMETA.yml和MYMETA.json

5. Dmake

随机C:\strawberry\cpan\Math-Random-ISAAC-1.004>dmake cp lib/数学/随机/

/ISAAC.pm blib\lib\Math\Random\ISAAC.pm cp lib/数学/随机/ISAAC/PP.pm blib\lib\Math\Random\ISAAC\PP.pm

6. dmake测试

C:\strawberry\cpan\Math-Random-ISAAC-1.004>dmake

测试

C:\strawberry\perl\bin\perl.exe "-MExtUtils::Command::MM“"-e”"test_harness(0,'blib\lib','blib\arch')“t/*.t t/01编译.t

.好的

T/02equence.t .............好的

T/03内存。t.已跳过:需要Test::LeakTrace来测试内存泄漏

T/04 uniform.t ..............已跳过:安装时不需要编写测试

T/05回退。t .............跳过: Test::Without::Module和Math::Random::ISAAC::XS用于测试回退能力

t/06exceptions.t ...........好的

T/release-dist-manifest.t.已跳过:这些测试用于候选版本测试

T/release-kwalitee.t.....已跳过:这些测试用于候选版本测试

t/release-pod-coverage.t ...已跳过:这些测试用于测试发布候选版本t/ release -pod-syntax.t .....已跳过:这些测试是针对发布候选测试/ release -portability.t...已跳过:这些测试用于测试所有测试成功的发布候选版本。

Files=11,Tests=607,15秒挂钟( 0.17用户+ 0.14系统=0.31CPU)

结果:通过

7. dmake安装

将安装信息附加到C:\strawberry\perl\ C:\strawberry\cpan\Math-Random-ISAAC-1.004>dmake / C:\strawberry\perl\site\lib\Math\Random\ISAAC.pm C:\strawberry\perl\site\lib\Math\Random\ISAAC\PP.pm /

这应该是可行的。

票数 0
EN

Stack Overflow用户

发布于 2014-04-08 10:52:04

我认为不同之处在于,您以自己的用户身份运行./checksetup.pl,而当您在web服务器上运行Bugzilla时,可能是用户www-data。如果是这样的话,你需要配置你的web服务器来查看~/perl5/lib/perl5

将以下内容(在替换foobar之后)添加到Apache配置中--如果您使用的话--可能会起作用:

代码语言:javascript
复制
SETENV PERL5LIB /home/foobar/perl5/local/lib/perl5:/home/foobar/perl5/local/lib/perl5/x86_64-linux-gnu-thread-multi

两篇可能有帮助的相关文章:(由我自己发表)

  • Can't locate ... in @INC
  • How to change @INC to find Perl modules in non-standard locations
票数 0
EN

Stack Overflow用户

发布于 2014-08-03 23:05:36

在windows上的命令行上

代码语言:javascript
复制
cd c:\perl64\bin
ppm install Math-Random-ISAAC
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11263894

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档