问题:是否有任何关于如何为 Windows 构建 Apache 的手册/步骤?官方文档是不够的。
我尝试在 Windows 7 Service Pack 3 上使用 Visual Studio 2008 Professional 在 Windows 上编译 Apache HTTP Server 2.4,但完全没有希望!!已经使用 Apache HTTP Server 2.2 测试了相同的步骤,并且构建过程成功。
我不知道出了什么问题,或者缺少了什么。这里遵循以下步骤:
Visual Studio 2008 Command Prompt:
"C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat"
cd C:\path\to\httpd-2.4.2
perl srclib\apr\build\lineends.pl
perl srclib\apr\build\cvtdsp.pl -2005
cd srclib\zlib
nmake -f win32/Makefile.msc LOC="-DASMV -DASMINF -I." OBJA="inffas32.obj match686.obj"
MT -manifest zlib1.dll.manifest -outputresource:zlib1.dll;2
cd ..\..\srclib\openssl
perl Configure VC-WIN32 enable-camellia disable-idea
ms\do_nasm
nmake /f ms\ntdll.mak
Open Apache.dsw with VS9 "Yes to All" to the "convert projects" question, Select relase win32
Now build InstallBin
Test your build
所需的库已经到位:
srclib\apr
srclib\apr-iconv
srclib\apr-util
srclib\openssl
srclib\pcre
srclib\zlib
正如我所说,所有 Apache HTTP Server 2.2编译都是成功的,而所有 Apache HTTP Server 2.4都不是。
这是最常出现的错误,重复了 100 多次:
fatal error LNK1181: cannot open input file '..\..\release\libhttpd.lib'
其他错误:
fatal error LNK1181: cannot open input file '..\release\mod_proxy_balancer.lib'
fatal error LNK1181: cannot open input file '..\core\release\mod_watchdog.lib'
fatal error C1083: Cannot open include file: 'pcre.h': No such file or directory
fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\Common7\ide\devenv.COM"' : return code '0x1'
error PRJ0019: A tool returned an error code from "Performing Makefile project actions"
注意:我注意到 Apache 2.4 包中缺少多个 .mak 文件,包括 httpd.mak 和其他文件。我认为这是问题的很大一部分。
有什么建议么?
环境:Windows 7 | 视觉工作室 2008 | 赛金 | Apache HTTP Server 2.4 源代码 | APR/APR-UTIL/APR-ICONV/ZLIB/OPENSSL