Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 如何定位perl模块_Apache_Perl_Mingw_Msys - Fatal编程技术网

Apache 如何定位perl模块

Apache 如何定位perl模块,apache,perl,mingw,msys,Apache,Perl,Mingw,Msys,我在windows7 pro上对msys使用perl5.8.8 我将此perl用作Apache2.2 for windows的CGI 我接受以下错误信息 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 /u

我在windows7 pro上对msys使用perl5.8.8

我将此perl用作Apache2.2 for windows的CGI

我接受以下错误信息

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

encoding.pm位于C:\usr\lib\perl5\5.8\msys\Encode中

该目录中的文件名为
Encoding.pm
(不是
Encoding.pm
),它将是Encode::Encoding模块,而不是Encoding模块

因此,听起来您的系统上不存在该模块。这很奇怪,因为它是Perl5.8附带的,但同样,您使用的是Perl的一个古老版本的古老端口。另一方面,编码模块是双寿命的,因此可以在不重新安装所有Perl的情况下安装它。如何在msys上做到这一点,我帮不了你


它不在你的系统上并不是一件坏事,因为你真的不应该使用这个模块;它的设计有根本缺陷。但是,在不知道你想通过使用它实现什么的情况下,我无法告诉你应该使用什么来代替。

我将我的文章
编码修改为
编码
调整了新问题的答案,而这并不影响我的答案,除了补充:你为什么要迁移到如此古老的系统?你认真地问过使用有缺陷的东西有什么不对吗?你应该知道,如果你现在移植软件,把它移植到长期不维护的系统是个坏主意。这有点像是决定把你的办公室搬到一座废弃的办公楼。