编译环境及工具:

vs2008

windows server 2008 x64版本

openssl源码包openssl-1.0.1c(可以从http://www.openssl.org/上下载)

activeperl(可以从http://www.activestate.com/activeperl下载)

编译步骤:

  1. 从visual studio 2008的安装菜单中打开visual studio 2008 x64兼容工具命令,不从普通 的cmd编译的原因是:编译时会用到visual studio 2008安装的一些工具,设置这些工具的路径很麻烦,visual studio自带的工具已经设置好了这些工具的路径 。
  2. 在打开的命令行中运行openssl源码中文件INSTALL.W64中的一些编译步骤即可,即:

         针对x64架构:

          > perl Configure VC-WIN64A
          > ms\do_win64a
          > nmake -f ms\ntdll.mak
          > cd out32dll
          > ..\ms\test

          针对IA64架构:

          > perl Configure VC-WIN64I
          > ms\do_win64i
          > nmake -f ms\ntdll.mak
          > cd out32dll
          > ..\ms\test

 编译好后生成的dll在源代码目录中的out32dll目录中,最好是把生成的以32结尾的dll改成64。手动可以改,也可以编译前修改相关文件,修改方法可见:http://blog.csdn.net/boise/article/details/5627191

生成的头文件在inc32目录中。

注:

通过修改ms\ntdll.mak文件中的/MD为/MDd /MT /MTd可以生成各种编译版本。修改ms\nt.mak来生成相应的.lib时,在使用时我遇到了链接不成功,不过通过修改ms\ntdll.mak时,可以。