步骤

  1. 下载并安装ActivePerl。 
    下载地址:http://www.activestate.com/activeperl/downloads 打开命令提示符,将其定位到D:\Program Files\Perl\eg目录下,执行perl example.pl,若提示:Hello from ActivePerl!

D:\Program Files\NASM

  1. 添加到系统环境变量Path中。 
    下载地址:http://www.nasm.us/。

  2. 将命令提示符定位到E:\OpenSSL\openssl-1.0.2h;
  • 输入perl  Configure  VC-WIN32 no-asm
  • 输入ms\do_nasm ;
  • 将命令提示符定位到C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin , 然后输入 vcvars32.bat,会显示Settingenvironment for using Microsoft Visual Studio 2010 x86 tools. 如果没有这一步,会提示nmake不是内部或外部命令;
  • 再次将命令提示符定位到E:\OpenSSL\openssl-1.0.2h;
  •  输入 nmake  –f  ms\ntdll.mak ;执行完后会在openssl-1.0.2h目录下生成一个out32dll(debug版本是out32dll.dbg)文件夹,里面包含了一些静态库、动态库和.exe文件;
  • 输入 nmake  -f  ms\ntdll.mak test ;若最终显示passed  all  tests说明生成的库正确;
  • 输入 nmake  -f  ms\ntdll.mak install ;则会在E:\OpenSSL\openssl目录下生成bin、include、lib、ssl四个文件夹;
  • 若编译静态库则用ms\nt.mak替换掉上面用到的ms\ntdll.mak即可,重复以上步骤,静态库时生成的文件夹为out32(debug版out32.dbg);
  • 若生成带汇编支持的库,则需将以上第4、5步用perl  Configure  VC-WIN32 --prefix=E:\OpenSSL\openssl  和 ms\do_ms替换即可;
  • 在E:\OpenSSL\openssl-1.0.1g\tmp32dll文件夹下包含相应的汇编文件。
  • 注意:如果在生成各个版本时有个别出现错误(可能是因为相互之间影响的结果),请把out32、out32.dbg、out32dll、out32dll.dbg这些文件夹删除,再重新试试。
  • 注意:如果在生成时出现,ml.exe,link.exe,cl.exe等错误,请把vs2010的bin配置到环境变量path中。 生成64位对应的库   1 .      输入 perl  Configure  VC-WIN64A no-asm   2.      输入 ms\do_nasm ;
      3.      输入 ms\do_win64a ;

      4.      输入 nmake  -f  ms\nt.mak,结果在out64dll文件夹中 ;
      5.      输入 nmake  -f  ms\nt.mak test ;若最终显示passed  all  tests说明生成的库正确;
      6.      输入 nmake  -f  ms\nt.mak install ;则会在E:\OpenSSL\openssl\win64目录下生成bin、include、lib、ssl四个文件夹;
      7.       以上编译的是release库,若编译debug库,则将以上第2步中的VC-WIN64A改成debug-VC-WIN64A即可;
      8.      若编译动态库则用ms\ntdll.mak替换掉上面用到的ms\nt.mak即可;
      9.      若生成带汇编支持的库,则需将以上第2步用perl  Configure  VC-WIN64A --prefix=E:\OpenSSL\openssl\win64替换即可;