我得到这个错误:
找不到Foo。pm在@INC
有没有比下载、解压、制作等更简单的方法来安装它?
我得到这个错误:
找不到Foo。pm在@INC
有没有比下载、解压、制作等更简单的方法来安装它?
当前回答
安全解决方案
许多回答都提到了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 shell未配置为使用的自定义位置,那么以下操作可能会很方便。
#wget <URL to the module.tgz>
##unpack
perl Build.PL
./Build destdir=$HOME install_base=$HOME
./Build destdir=$HOME install_base=$HOME install
即使它应该工作:
cpan -i module_name
安全解决方案
许多回答都提到了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的错误报告。
有时你可以使用yum search foo来搜索相对的perl模块,然后使用yum install xxx来安装。
在Unix:
通常你在shell中开始cpan:
全面美元
和类型
安装巧克力::比利时
简而言之:
巧克力cpan::比利时
在Windows上:
如果您在Windows上使用ActivePerl, PPM (Perl包管理器)有许多与cpa .pm相同的功能。
例子:
ppm美元 Ppm >搜索net-smtp 安装Net-SMTP-Multipart
参见如何安装Perl模块?在CPAN常见问题解答中
许多发行版以包的形式发布了大量perl模块。
Debian/Ubuntu: apt-cache search 'perl$' Arch Linux: pacman -Ss '^perl-' Gentoo: category dev-perl
您应该总是喜欢它们,因为您可以从自动(安全)更新和易于删除中受益。这对于cpan工具本身来说是相当棘手的。
对于Gentoo,有一个很好的工具叫做g-cpan,它可以从CPAN构建/安装模块,并为你创建一个Gentoo包(ebuild)。