Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/10.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
使用apache2和ActivePerl 5.16编译mod_perl?_Perl_Rhel_Mod Perl_Apache2.2_Activeperl - Fatal编程技术网

使用apache2和ActivePerl 5.16编译mod_perl?

使用apache2和ActivePerl 5.16编译mod_perl?,perl,rhel,mod-perl,apache2.2,activeperl,Perl,Rhel,Mod Perl,Apache2.2,Activeperl,我正在RHEL5.9服务器上使用ActivePerl5.16。我设置了PATH变量,以便首先找到ActivePerl可执行文件。现在我正试图编译mod_perl.so。但是,命令perl Makefile.PL MP_APXS=/usr/sbin/APXS生成: I have found ExtUtils::Embed 1.3001 at /opt/ActivePerl-5.16/lib/ExtUtils/Embed.pm This is probably not the right o

我正在RHEL5.9服务器上使用ActivePerl5.16。我设置了PATH变量,以便首先找到ActivePerl可执行文件。现在我正试图编译mod_perl.so。但是,命令
perl Makefile.PL MP_APXS=/usr/sbin/APXS
生成:

I have found ExtUtils::Embed 1.3001 at

  /opt/ActivePerl-5.16/lib/ExtUtils/Embed.pm

This is probably not the right one for this perl version. Please make sure
there is only one version of this module installed and that it is the one
that comes with this perl version.

If you insist on using the ExtUtils::Embed as is set the environment
variable MP_USE_MY_EXTUTILS_EMBED=1 and try again.

Details: expecting ExtUtils::Embed 1.30 (according to Module::CoreList)

BEGIN failed--compilation aborted at lib/Apache2/Build.pm line 64.
Compilation failed in require at Makefile.PL line 37.
BEGIN failed--compilation aborted at Makefile.PL line 37.

我对这一切有点困惑。。。我是一名Perl tyro,我只想在我的服务器上安装并运行一些软件(主要基于Perl)。有什么建议吗?

使用ActivePerl的目的是能够使用
ppm
。不幸的是,根据ppm存储库,它是不可用的


这种症状确实表明了一些奇怪的事情。显然ExtUtils::embed1.31来自5.19.2发行版。您的安装似乎真的有问题。

我会将此作为一个答案发布,因为它似乎有效。要更正此错误,请设置环境变量:

MP_USE_MY_EXTUTILS_EMBED=1

CPAN可能安装了您下载的模块的最新版本,而不是与Perl5.16一起发布的模块。这个环境变量必须告诉mod_perl期望ExtUtils::Embed 1.31而不是1.30。

您是否尝试过像上面所说的那样设置环境变量
MP\u USE\u MY\u ExtUtils\u Embed=1
?不确定这会有什么作用,但在最后试一试也无妨设置
MP\u USE\u MY\u EXTUTILS\u EMBED=1
似乎确实有效。事实上,我只是从其网站下载并安装了ActivePerl 5.16,并用新的cpan下载了所有必要的模块。我认为这也很奇怪,因为Perl 5.17.4附带了1.30。我不知道有什么或为什么会出错:我下载并安装了ActivePerl 5.16,并更改了使用此新安装的路径。然后我使用新安装的ActivePerl中的
cpan
来安装各种模块。不过,我们将看到我的编译过程。。。