我在windows7 pro上使用perl5.8.8 for msys。
我使用这个perl作为CGI与Apache2.2 for windows。
我接受以下错误按摩..
Can't locate encoding.pm in @INC (@INC contains:
/usr/lib/perl5/5.8/msys
/usr/lib/perl5/5.8
/usr/lib/perl5/site_perl/5.8/msys
/usr/lib/perl5/site_perl/5.8
/usr/lib/perl5/site_perl/5.8
/usr/lib/perl5/vendor_perl/5.8/msys
/usr/lib/perl5/vendor_perl/5.8
/usr/lib/perl5/vendor_perl/5.8
.)
[添加换行符以提高可读性。]
这是我的代码
#!/opt/gnu/bin/perl
print "Content-type: text/plain; charset=iso-8859-1\n\n";
use encoding qw(utf8);
encoding.pm在C:\usr\lib\perl5\5.8\msys\Encode
中,如果我从DOS提示符输入,则没有任何错误消息。
C:\usr\bin>perl -e 'use encoding qw(utf-8)
C:\usr\bin>
实际上\ usr下的lib是\ mingw \ msys \ 1.0的符号链接。\ lib
如何找到encoding.pm?
答案 0 :(得分:2)
encoding.pm位于C:\ usr \ lib \ perl5 \ 5.8 \ msys \ Encode
该目录中的文件名为Encoding.pm
(不是encoding.pm
),它将是 Encode :: Encoding 模块,而不是编码模块。
所以听起来这个模块在你的系统上并不存在。这很奇怪,因为它带有Perl 5.8,但是再一次,你使用古老版Perl的古老港口。从好的方面来说,编码模块是双重生存的,因此无需重新安装所有Perl即可安装。在msys上如何做到这一点,我无法帮助你。
它不在你的系统上并不是一件坏事,因为你真的不应该使用那个模块;它的设计存在根本缺陷。但是,如果不知道你想要通过什么来实现它,我就无法告诉你应该使用什么。