在perl版本v5.10.0中使用telnet出现这样的错误?



QUOTE:
原帖由 con 于 2008-10-8 21:59 发表
你用5.10.0的话下面的命令可以列出模块的搜索路径:

perl -E 'say for @INC'

可能是小弟没有说清楚,原来的perl版本是5.8.5,后来升级到5.10.0,

[root@localhost aa]# perl -E 'say for @INC'
/usr/local/lib/perl5/5.10.0/i686-linux
/usr/local/lib/perl5/5.10.0
/usr/local/lib/perl5/site_perl/5.10.0/i686-linux
/usr/local/lib/perl5/site_perl/5.10.0


是不是升级后,还需要修改搜索路径,它怎么会去其他版本目录下面找呢?
.

用这段代码试试..


use warnings;
use strict;
use File::Find;

find(
        sub {
                return unless /\.pm$/;
                my $module = $File::Find::name;
                foreach(@INC) {
                        $module =~ s/^$_\///;
                }
                $module =~ s/\//::/g;
                $module =~ s/\.pm//;
                print $module, "\t";
        },
        @INC
        
        
);

查看所有模块.   再检查一下其他模块是否可用.