我按照此helpful tutorial为我的用户安装了Perl。我很抱歉链接到外部网站,但我认为阅读这是了解如何回答这个问题的唯一方法。
Anywho,我正在提供CPAN配置的默认值 - 通过教程创建的.cpan
和CPAN
目录 - 但由于某种原因,CPAN仍然想要深入研究/usr/lib/
- 它只是无法到达 - 当我尝试安装模块时。这是在安装DBD::CSV
时。
以下是错误消息:
All tests successful (7 subtests UNEXPECTEDLY SUCCEEDED), 3 tests skipped.
Files=23, Tests=706, 3 wallclock secs ( 2.28 cusr + 0.54 csys = 2.82 CPU)
/usr/bin/make test -- OK
Running make install
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
ERROR: Can't create '/perl5lib/lib/Bundle/DBD'
mkdir /perl5lib: Permission denied at /usr/lib/perl5/5.8.8/ExtUtils/Install.pm line 457
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
at -e line 1
make: *** [pure_site_install] Error 13
/usr/bin/make install -- NOT OK
似乎是错误的perl5lib
。
答案 0 :(得分:5)
是的,local :: lib有帮助。我建议使用cpanm而不是cpan。我认为它默认安装〜/ perl5 / lib / perl5。这是一个super useful tutorial。
答案 1 :(得分:5)
local::lib导致安装程序使用INSTALL_BASE,我认为它已被破坏。我使用perlbrew来安装Perl的本地副本。
答案 2 :(得分:2)
看看这个模块:local::lib
答案 3 :(得分:0)
你是否在cpan中配置myconfig.pm而不是让它自动填写所有默认值?在cpan配置期间,您需要为Makefile.PL部分添加PREFIX =“”,以便将模块安装到您具有写访问权限的新位置。由于已经为您自动配置,请进入.cpan / CPAN /,查找MyConfig.pm并进行编辑。找到“makepl_arg”行并更改[]中的值以包含PREFIX =“”。然后尝试使用perl -MCPAN -e shell并安装模块。