我得到这个错误:

找不到Foo。pm在@INC

有没有比下载、解压、制作等更简单的方法来安装它?


当前回答

可以在Fedora上使用

# yum install foo

只要Fedora为该模块提供了一个现有的包。

其他回答

很多时候,cpan install命令失败,出现类似这样的消息 “使测试已返回坏状态,不强制将不会安装”

在这种情况下,下面是安装模块的方法:

perl -MCPAN -e "CPAN::Shell->force(qw(install Foo::Bar));"

cpan命令作为cpan Modulename

$ cpan HTML::Parser

要自动安装依赖项,请执行以下操作

$ perl -MCPAN -e shell
cpan[1]>  o conf prerequisites_policy follow
cpan[2]>  o conf commit
exit

我更喜欢App::cpanminus,它会自动安装依赖项。只做

$ cpanm HTML::Parser

安全解决方案

许多回答都提到了cpan实用程序的使用(它使用cpan .pm),而没有提到安全性。CPAN 2.27及更早版本默认配置urllist使用http URL(即http://www.cpan.org/),允许MITM攻击,因此是不安全的。这是用来下载checksum文件的,因此需要将其更改为安全URL(例如https://www.cpan.org/)。

因此,在运行cpan并接受默认配置之后,您需要修改生成的MyConfig。PM文件(输出全路径)如下所示。取代

'urllist' => [q[http://www.cpan.org/]],

by

'urllist' => [q[https://www.cpan.org/]],

注意:https是不够的;你还需要一个你可以信任的网站。所以,如果你想选择任意的镜子,要小心。

然后就可以按常规方式使用cpan了。

我在rt.cpan.org上关于不安全URL的错误报告。

即使它应该工作:

cpan -i module_name

我知道的两种方法:

使用PPM:

在Windows (ActivePerl)中,我使用ppm

从命令行输入ppm。在ppm提示符下…

ppm> install foo

or

ppm> search foo

获取可用的foo模块列表。为所有命令键入help

使用cpan:

你也可以这样使用CPAN (*nix系统):

perl -MCPAN -e 'shell'

给你一个提示

cpan>

听到提示音…

cpan> install foo  (again to install the foo module)

输入h以获得cpan的命令列表