无法安装任何perl模块,因为它可以';下午三点

无法安装任何perl模块,因为它可以';下午三点,perl,module,installation,cpan,Perl,Module,Installation,Cpan,大家好,我的社区 我正在尝试安装一个perl模块IO::All。但是每次我使用CPAN安装许多perl模块时(包括如果我从CPAN“install Build::CPAN”中运行),它都会失败 无法在@INC中找到strict.pm(@INC包含: /dev/null/lib/perl5.8-dist/Linux-2.6c2.5-x86_64-64int /dev/null/lib/perl5.8-dist /dev/null/lib/perl5.8-dist/Linux-2.6c2.5-x86

大家好,我的社区

我正在尝试安装一个perl模块IO::All。但是每次我使用CPAN安装许多perl模块时(包括如果我从CPAN“install Build::CPAN”中运行),它都会失败

无法在@INC中找到strict.pm(@INC包含: /dev/null/lib/perl5.8-dist/Linux-2.6c2.5-x86_64-64int /dev/null/lib/perl5.8-dist /dev/null/lib/perl5.8-dist/Linux-2.6c2.5-x86_64-64int /dev/null/lib/perl5.8-dist/dev/null/lib/perl5.8-dist.)位于Build.PL 第2行

这让我困惑了好几个小时。我在谷歌上到处搜索,似乎找不到解决办法。运行类似于

perl -e 'use strict; print "ok"'
很好。我试图运行的原始文件要求IO::All也使用strict。严格到什么程度都不见了?默认情况下perl不是严格的一部分吗?那么/dev/null在哪里?如果你不在乎的话,那不是一个特殊的地方吗?我为这件事发了一段时间的脾气。我一定错过了什么明显的东西

这是在Rhel5虚拟机Linux-2.6-x86_64变体上运行的

非常感谢你的帮助。如果我需要提供更多信息,请告诉我

谢谢,,
-Asaf

我还怀疑您的cpan脚本配置错误。但是
perl-MCPAN
使用相同的配置,因此对您没有帮助

安装另一个CPAN客户端可能会有所帮助。我推荐cpanminus,因为它很容易安装。只需运行以下命令(最好以root用户身份登录):

现在您应该有了cpanminus,您可以使用它安装IO::All:

cpanm -S -v IO::All

我今天有这个问题。我编译了perl5.14并安装到我的主目录($home/perl5.14/)

因为perl5.14安装了一些最小的perl5库,所以必须将目录包括在$PERL5LIB=$HOME/perl5.14/usr/local/lib/perl5/5.14.2中


希望这对您有用:)

我已经安装了cpanminus,但我无法按照您建议的方式使用perl安装它。它失败,错误与上面相同,无法定位strict.pm。相反,我安装它时使用了一个目录下载的二进制文件,而不是放在我的$PATH中。但无论我使用的是cpanm还是常规cpan。我也犯了同样的错误。输出几乎与上面的cpan相同,因此我将不发布它。您能否提供
echo conf | perl-MCPAN-e shell的输出
/apollo/env/environprovide/bin/make
/apollo/env/environprovide/var/bin/zsh
?我会试着做1)
o conf make/usr/bin/make
2)
o conf shell/bin/sh
3)
o conf commit
看看这是否有区别?
perl-wle'print for@INC'
显示了什么?什么?!安装库甚至不在
@INC
中?是的,这个perl的构建/安装方式有些奇怪。此时,我想知道如何将
/apollo/
添加到
@INC
。这些路径应该被硬编码到
perl
,但它们似乎是通过其他一些被覆盖的方式添加的。我想知道在
perl-V
(大写字母“V”)的
%ENV
部分有什么内容。修复起来并不复杂。只需重新安装Perl。但这将意味着失去你的定制,我们不知道这些是什么。我感谢你的回答,但不幸的是,我没有办法验证它。我最终只是重新创建了我的虚拟机(因为另一个问题),所以问题就消失了。无论如何,感谢您的帮助。
makeinstall
为我修复了从源代码构建perl用于perlbrew时的问题。我甚至不必
perlbrew使用
或更改
路径
!谢谢
cpanm -S -v IO::All