LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1069|回复: 6

[求助]Perl的模块从CPAN下载的与emerge的问题。

[复制链接]
发表于 2007-11-15 18:22:06 | 显示全部楼层 |阅读模式
当从CPAN.pm 来装时,安装路径是  /usr/lib/perl5/vendor_perl/5.8.8/ 。
而emerge装在 /usr/lib/perl5/vendor_perl/5.8.8/i686-linux/ 。
本来不影响使用,但CPAN.pm总抓最新的,而我是用 x86 的源。而perl -V显示 i686-linux/ 的搜索次序靠前。

结果是,新版本的 .pm 文件无法被默认方法使用,而有些不在 @INC 的文件又已经被更新了。 造成一些程序运行异常。
比如 gmod-0.5-RC1 装到 make ontologies 那一步时,总报告有个命令找不到(我还没找到具体代码,目前只是猜测)。

如何解决Perl模块的安装与更新问题比较好?
发表于 2007-11-15 19:44:40 | 显示全部楼层
http://www.gentoo.org/proj/en/perl/g-cpan.xml
或许这个能行吧

我没试过
我只是帮你搜了搜 gentoo perl module cpan
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-11-15 20:22:11 | 显示全部楼层
我也找到它了,不过试用了个HTML::Tidy 没成功。(不排除我的cpan.pm没指定安装路径而使用默认的原因)
目前先跑了下 perl-cleaner all

不知道其他地方有没有好用的脚本。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-11-15 22:27:25 | 显示全部楼层
先问个最原始的办法。

如何把 /usr/lib/perl5/vendor_perl/5.8.8/ 下除了 i686-linux/ 以外的所有文件移动或复制到  /usr/lib/perl5/vendor_perl/5.8.8/i686-linux/ 中,不提示就直接覆盖同名文件?

(root下我用了 alias cp='cp -i'  ,对rm可以用-f去掉,对cp咋办?)
回复 支持 反对

使用道具 举报

发表于 2007-11-15 23:07:48 | 显示全部楼层
unalias cp
保持到下次alias前
或者
\cp
只起效一次
回复 支持 反对

使用道具 举报

发表于 2007-11-16 02:31:56 | 显示全部楼层
你可以用perl -V 来查看@NIC。如果你要改变的话可以 export PERL5LIB=pathlist来调整顺序,再用perl -V来查验。试试看吧
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-11-16 22:33:50 | 显示全部楼层
export PERL5LIB=/usr/lib/perl5/vendor_perl/5.8.8/

  %ENV:
    PERL5LIB="/usr/lib/perl5/vendor_perl/5.8.8/"
  @INC:
    /usr/lib/perl5/vendor_perl/5.8.8//i686-linux
    /usr/lib/perl5/vendor_perl/5.8.8/
    /etc/perl
    /usr/lib/perl5/vendor_perl/5.8.8/i686-linux
    /usr/lib/perl5/vendor_perl/5.8.8
    /usr/lib/perl5/vendor_perl
    /usr/lib/perl5/site_perl/5.8.8/i686-linux
    /usr/lib/perl5/site_perl/5.8.8
    /usr/lib/perl5/site_perl
    /usr/lib/perl5/5.8.8/i686-linux
    /usr/lib/perl5/5.8.8
    /usr/local/lib/site_perl
    .

???
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表