平台:
Microsoft Visual C++ 6.0
ActivePerl
awk工具
Microsoft Platform SDK - February 2003
所需软件:
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm
Microsoft Platform SDK - February 2003
http://cm.bell-labs.com/cm/cs/who/bwk/awk95.exe awk工具
下载后改名为awk.exe并放到VC98\bin目录下
http://httpd.apache.org/下载win的源代码
http://www.zlib.net/下载zlib的DLL和win的源代码
http://www.openssl.org/下载OpenSSL源代码
1.解压Apache的源代码到httpd目录里面
2.解压zlib源代码包和编译好的DLL文件,放在httpd\srclib\zlib目录下(自行创建新文件夹)
3.解压OpenSSL源代码,放在httpd\srclib\OpenSSL目录下(自行创建新文件夹)
4.把httpd\srclib\zlib文件夹复制一个到httpd\srclib\OpenSSL目录下
5.打开httpd\srclib\OpenSSL\zlib\lib目录把zdll.exp和zdll.lib复制一份,并改名为zlib1.exp和zlib1.lib,此时目录下面存在
zdll.exp\zdll.lib\zlib1.exp\zlib1.lib这四个文件。复制zlib1.exp和zlib1.lib到httpd\srclib\OpenSSL目录下。
6.打开CMD,CD到httpd\srclib\OpenSSL目录,执行下面的命令
备注:注意大小写,不用版本的Apache可能会有些不同,详情去查看Apache手册里面的win_compiling.html
编译完毕之后,生成的文件会放在httpd\srclib\OpenSSL\out32dll目录面
7.将httpd\srclib\OpenSSL\out32dll目录里面的*.dll,*.exp,*.lib复制到httpd\srclib\OpenSSL目录里面
8.进入httpd\srclib\zlib\lib目录,把zdll.exp和zdll.lib复制到httpd\srclib\zlib目录里面
9.打开命令行模式,CD到httpd目录,然后执行下面的命令
正常发行版命令
带调试文件命令
如果在编译过程中,出现类似
的问题,就按照下面的方法修改:
httpd\srclib\apr-util\include\apr_ldap.h
把
注释或删除(编译过程中这一行会恢复,如果第一次编译失败,要重新编译,还需要进去这个文件修改一次)
httpd\srclib\apr-util\ldap\apr_ldap_init.c
把
注释或删除
修改完之后再进行编译。
10.编译完毕之后,执行安装命令,提取文件。
备注:INSTDIR的dir参数是用来设定安装目录;如果忽略此参数,则安装到分区根目录的Apache2文件夹内。
正常发行版命令
带调试文件命令
完成
Microsoft Visual C++ 6.0
ActivePerl
awk工具
Microsoft Platform SDK - February 2003
所需软件:
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm
Microsoft Platform SDK - February 2003
http://cm.bell-labs.com/cm/cs/who/bwk/awk95.exe awk工具
下载后改名为awk.exe并放到VC98\bin目录下
http://httpd.apache.org/下载win的源代码
http://www.zlib.net/下载zlib的DLL和win的源代码
http://www.openssl.org/下载OpenSSL源代码
1.解压Apache的源代码到httpd目录里面
2.解压zlib源代码包和编译好的DLL文件,放在httpd\srclib\zlib目录下(自行创建新文件夹)
3.解压OpenSSL源代码,放在httpd\srclib\OpenSSL目录下(自行创建新文件夹)
4.把httpd\srclib\zlib文件夹复制一个到httpd\srclib\OpenSSL目录下
5.打开httpd\srclib\OpenSSL\zlib\lib目录把zdll.exp和zdll.lib复制一份,并改名为zlib1.exp和zlib1.lib,此时目录下面存在
zdll.exp\zdll.lib\zlib1.exp\zlib1.lib这四个文件。复制zlib1.exp和zlib1.lib到httpd\srclib\OpenSSL目录下。
6.打开CMD,CD到httpd\srclib\OpenSSL目录,执行下面的命令
备注:注意大小写,不用版本的Apache可能会有些不同,详情去查看Apache手册里面的win_compiling.html
perl Configure no-mdc2 no-rc5 no-idea enable-zlib VC-WIN32 -Izlib
ms\do_ms.bat
nmake -f ms\ntdll.mak
编译完毕之后,生成的文件会放在httpd\srclib\OpenSSL\out32dll目录面
7.将httpd\srclib\OpenSSL\out32dll目录里面的*.dll,*.exp,*.lib复制到httpd\srclib\OpenSSL目录里面
8.进入httpd\srclib\zlib\lib目录,把zdll.exp和zdll.lib复制到httpd\srclib\zlib目录里面
9.打开命令行模式,CD到httpd目录,然后执行下面的命令
正常发行版命令
nmake /f Makefile.win _apacher
带调试文件命令
nmake /f Makefile.win _apached
如果在编译过程中,出现类似
Support for LDAP v2.0 toolkits has been removed from apr-util. Please use an LDAP v3.0 toolkit.
的问题,就按照下面的方法修改:
httpd\srclib\apr-util\include\apr_ldap.h
把
#error Support for LDAP v2.0 toolkits has been removed from apr-util. Please use an LDAP v3.0 toolkit.
注释或删除(编译过程中这一行会恢复,如果第一次编译失败,要重新编译,还需要进去这个文件修改一次)
httpd\srclib\apr-util\ldap\apr_ldap_init.c
把
LDAP_VENDOR_NAME
注释或删除
修改完之后再进行编译。
10.编译完毕之后,执行安装命令,提取文件。
备注:INSTDIR的dir参数是用来设定安装目录;如果忽略此参数,则安装到分区根目录的Apache2文件夹内。
正常发行版命令
nmake /f Makefile.win installr INSTDIR=dir
带调试文件命令
nmake /f Makefile.win installd INSTDIR=dir
完成