0

按照 mod_perl 邮件列表中的这些说明安装了 Strawberry Perl 5.10 和 mod_perl2,没有问题。但是,尝试安装Apache2::我的脚本使用的各种模块会导致错误。Apache2::Reload尽管如此,我还是能够安装一个( ):

C:\>cpan -f Apache2::Reload
CPAN: CPAN::SQLite loaded ok (v0.199)
Database was generated on Tue, 09 Nov 2010 02:40:29 GMT
Running install for module 'Apache2::Reload'
Running make for P/PH/PHRED/Apache-Reload-0.11.tar.gz
CPAN: Digest::SHA loaded ok (v5.48)
CPAN: Compress::Zlib loaded ok (v2.03)
Checksum for C:\strawberry\cpan\sources\authors\id\P\PH\PHRED\Apache-Reload-0.11
.tar.gz ok
CPAN: Archive::Tar loaded ok (v1.66)
CPAN: File::Temp loaded ok (v0.22)
CPAN: Parse::CPAN::Meta loaded ok (v1.40)
CPAN: Module::CoreList loaded ok (v2.36)

  CPAN.pm: Going to build P/PH/PHRED/Apache-Reload-0.11.tar.gz

Cannot opendir Y:\Apache\APACHE~2\lib: No such file or directory at C:/strawberr
y/perl/site/lib/Apache2/Build.pm line 1664.
Warning: No success on command[C:\strawberry\perl\bin\perl.exe Makefile.PL]
CPAN: YAML loaded ok (v0.71)
  PHRED/Apache-Reload-0.11.tar.gz
  C:\strawberry\perl\bin\perl.exe Makefile.PL -- NOT OK
Running make test
  Make had some problems, won't test
Running make install
  Make had some problems, won't install

C:\>

...只需将几个 .pm 文件复制到site/lib. 然而,其他的我不太确定。例如,Apache2::RequestRec给我以下错误:

C:\>cpan -f Apache2::RequestRec
CPAN: CPAN::SQLite loaded ok (v0.199)
Database was generated on Tue, 09 Nov 2010 02:40:29 GMT
CPAN: Module::CoreList loaded ok (v2.36)
Running install for module 'Apache2::RequestRec'
Running make for G/GO/GOZER/mod_perl-2.0.4.tar.gz
CPAN: Digest::SHA loaded ok (v5.48)
CPAN: Compress::Zlib loaded ok (v2.03)
Checksum for C:\strawberry\cpan\sources\authors\id\G\GO\GOZER\mod_perl-2.0.4.tar
.gz ok
CPAN: Archive::Tar loaded ok (v1.66)
CPAN: File::Temp loaded ok (v0.22)
CPAN: Parse::CPAN::Meta loaded ok (v1.40)

  CPAN.pm: Going to build G/GO/GOZER/mod_perl-2.0.4.tar.gz

no conflicting prior mod_perl version found - good.

Next we need to know where the 'apxs' script is located. This script
provides a lot of information about the Apache installation, and makes
it easier to find things on your system. Normally it's located in the
same directory as the 'httpd' executable.

If you don't yet have Apache installed you can build Apache against
the Apache source code, but you won't be able to run the test suite (a
very important step). Therefore you may want to install Apache before
proceeding.


Please provide a full path to 'apxs' executable
(press Enter if you don't have it installed):


Please provide the location of the Apache directory:  C:\Program Files\Apache So
ftware Foundation\Apache2.2
[  error] Unable to open C:\Program Files\Apache Software Foundation\Apache2.2/a
p_release.h: No such file or directory
[  error] Unable to determine server version, aborting.
[  error] Please specify MP_APXS or MP_AP_PREFIX.
Warning: No success on command[C:\strawberry\perl\bin\perl.exe Makefile.PL]
CPAN: YAML loaded ok (v0.71)
  GOZER/mod_perl-2.0.4.tar.gz
  C:\strawberry\perl\bin\perl.exe Makefile.PL -- NOT OK
Running make test
  Make had some problems, won't test
Running make install
  Make had some problems, won't install

C:\>

Apache2::在 Strawberry Perl 下编译模块有什么技巧吗?我还需要编译自己的 Apache 二进制文件吗?(如果是这样,我可以使用 Strawberry 提供的 make 工具来做到这一点吗?)

4

2 回答 2

1

如果你从源代码编译 apache,你应该有 apache 的 apxs.exe。将其添加到PATH. 您需要一些Apache::位的 apache 源代码。

于 2010-11-09T13:14:57.103 回答
1

通过这些说明安装实际上会安装所有Apache2::模块,除了Apache2::Reload.

于 2010-11-10T11:57:24.077 回答