今天用cpan安装term::readline,报了个这样的错误:
going to read /root/.cpan/sources/modules/03modlist.data.gz can't locate object method data via package cpan::modulelist (perhaps you forgot to load cpan::modulelist?) at (eval 31) line 1. at /usr/lib/perl5/5.8.5/cpan.pm line 3406 cpan::index::rd_modlist('cpan::index', '/root/.cpan/sources/modules/03modlist.data.gz') called at /usr/lib/perl5/5.8.5/cpan.pm line 3129 cpan::index::reload('cpan::index') called at /usr/lib/perl5/5.8.5/cpan.pm line 675 cpan::exists('cpan=hash(0x9c79658)', 'cpan::module', 'term::readline') called at /usr/lib/perl5/5.8.5/cpan.pm line 1842 cpan::shell::expandany('cpan::shell', 'term::readline') called at /usr/lib/perl5/5.8.5/cpan.pm line 2078 cpan::shell::rematein('cpan::shell', 'install', 'term::readline') called at /usr/lib/perl5/5.8.5/cpan.pm line 2165 cpan::shell::install('cpan::shell', 'term::readline') called at /usr/lib/perl5/5.8.5/cpan.pm line 201 eval {...} called at /usr/lib/perl5/5.8.5/cpan.pm line 201 cpan::shell() called at -e line 1
google结果有人是这样解决的:
rm -rf ~/.cpan
删除后在perl -mcpan -e shell中执行reload index
然后执行install bundle::cpan
最后执行reload cpan即可正常通过命令行install modules
我按照这个做,结果reload index执行都报错,继续google,发现应该是config.pm的问题,重新配置:
cpan> o conf urllist unshift http://www.perl.com/cpan/
cpan> o conf commit
然后再执行上面的reload index之后的步骤就ok了.
教程链接:
随意转载~但请保留教程地址★