最近我在我的 RHEL 5 上使用 perl 版本 5.8.8 安装了一些 perl 模块,所有安装都很好。我可以看到这些模块存在于@INC 中,但我的 TWiki 站点声称它找不到它们返回错误:Can't locate Net/LDAP.pm in @INC(很多包含模块的路径)在TWiki.pm 第 xx 行。当我这样做perl -e 'use Net::LDAP';
时,它不会返回任何东西,这意味着 perl 可以找到该模块。除了使用我必须安装的特定模块的插件外,TWiki 也被正确配置并且工作正常,我什至添加了 setLib.cfg 的路径以防万一。
编辑:
which perl
返回/usr/bin/perl
的shebang线twiki/cgi-bin/view
是#!/usr/bin/perl -wT
perl -MNet::LDAP -e 'print $INC{"Net/LDAP.pm"}, "\n";'
返回:
/usr/lib/perl5/site_perl/5.8.8/Net/LDAP.pm
apache错误日志显示:[Tue Nov 16 10:53:47 2010] [error] [client 10.76.14.170] [Tue Nov 16 10:53:47 2010] view: INC /usr/lib/perl5/site_perl/5.8.8 at /usr/local/apache2/htdocs/twiki5_pdc/bin/view line 44.
所以它使用正确的路径。