最近,Apache2上使用的一个模块升级了,因为windows上的dll文件也需要重新升级


在Windows上对应的dll文件最早是qyb老大给编译的,编译环境造就没了


我参照老大以前写的一个简单文档,搭建了一个环境,最后编译成功了


记录一下过程:



  1. 安装Apache2,选择custom install,把对应的头文件和lib给装上

  2. 安装Win32OpenSSL

  3. 安装Visual C++ Express,需要把Windows SDK给装上

  4. 建立一个bat文件,设置环境变量(PATH,INCLUDE,LIB),并运行编译和链接命令:


  5. 折叠复制代码




    1. @set PATH=C:Program FilesMicrosoft Visual Studio 9.0Common7IDE;C:Program FilesMicrosoft Visual Studio 9.0VCBIN;C:Program FilesMicrosoft Visual Studio 9.0Common7Tools;C:WINDOWSMicrosoft.NETFrameworkv3.5;C:WINDOWSMicrosoft.NETFrameworkv2.0.50727;C:Program FilesMicrosoft Visual Studio 9.0VCVCPackages;c:Program FilesMicrosoft SDKsWindowsv6.0Ain;%PATH%  

    2. @set INCLUDE=C:Program FilesMicrosoft Visual Studio 9.0VCINCLUDE;c:Program FilesMicrosoft SDKsWindowsv6.0AInclude;c:Program FilesApache Software FoundationApache2.2include;c:Program FilesOpenSSLinclude;%INCLUDE%  

    3. @set LIB=C:Program FilesMicrosoft Visual Studio 9.0VCLIB;c:Program FilesMicrosoft SDKsWindowsv6.0ALib;c:Program FilesApache Software FoundationApache2.2lib;c:Program FilesOpenSSLlibVC;%LIB%  

    4. @set LIBPATH=C:WINDOWSMicrosoft.NETFrameworkv3.5;C:WINDOWSMicrosoft.NETFrameworkv2.0.50727;C:Program FilesMicrosoft Visual Studio 9.0VCLIB;%LIBPATH%  

    5.   

    6. cl /MD /D "WIN32" /c mod_test.c  

    7. link /DLL mod_test.obj libhttpd.lib libapr-1.lib libeay32MD.lib  

    8. mt -manifest mod_test.dll.manifest -outputresource:mod_test.dll;#2  







             VC安装后,会自动生成一个c:Program FilesMicrosoft Visual Studio 9.0Common7Toolsvsvars32.bat文件,可以参照里面的环境变量设置,并增加Apache2,OpenSSl,Microsoft SDKs对应的变量