0

我正在尝试在我的服务器中安装 Perl 脚本。当我收到服务器访问权限时。

我安装了 apache2,mod_perl,在 var/www/html 中激活了 mod_rewrite

当我尝试执行 install.cgi 时,出现以下错误:

[Wed Jun 20 21:09:36 2012] [error] Can't locate XFileConfig.pm in @INC (@INC contains: . /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/5.8.8 /etc/httpd) at /var/www/cgi-bin/install.cgi line 4.\nBEGIN failed--compilation aborted at /var/www/cgi-bin/install.cgi line 4.\n

我在 Centos 5, Perl v5.8.8 下

4

2 回答 2

3
  1. 确保您已安装 XFileSharing。
  2. 找到安装 XFileSharing 的 lib 的路径。您可以使用以下命令找到 XFileConfig.pm

    updatedb
    locate XFileConfig.pm    
    
  3. 在 perl 脚本顶部添加以下行。

    use lib '<path>';
    
于 2012-06-20T19:28:50.147 回答
2

检查模块是否已安装或未使用perl -MModule::Name -e "print 'OK';"

使用cpan install Module::Name.

添加@INC使用 httpd.conf的路径

SetEnv PERL5LIB "/path/to/directory/containing/module".

@INC这会永久添加路径。

或者

use lib '/path/to/directory/containing/module';在使用该模块的 perl 脚本中。

这是一种临时方法,您必须在每个 perl 脚本中添加它。

或者

perl -I/var/www/cgi-bin install.cgi

-I用于在运行 install.cgi 时包含路径。

前任:

> perl -IC:\a\b -e "print @INC;"
C:\a\bC:/Perl/site/libC:/Perl/lib.
于 2012-06-21T10:10:19.977 回答