ActivePerl windows安装程序下载:
http://aspn.activestate.com/ASPN/Downloads/ActivePerl/
OpenSSL的源码:
http://www.openssl.org/source/
注意ActivePerl下载的是x64还是x86,这里我下载的是x86.
首先,解压OpenSSL源代码到 D:\openssl-0.9.8h(目录自己定义)。然后进入到openssl-0.9.8h后,
用Administrator运行Visual Studio 2010命令提示,然后执行如下命令:
1> " perl Configure VC-WIN32 --prefix=c:/openssl" 目标是指定OpenSSL编译好后的安装路径。
2> ms\do_ms, 创建Makefile文件
3> VC目录"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin" 加到环境变量中,因为nmake在这个目录下。然后重启使之生效。
4> nmake -f ms\ntdll.mak ----(这里我们编译动态库,当然也能用别的命令编译静态库)
注:若这一步报错,进入安装包下的ms目录,修改ntdll.mak(编译静态库则是nt.mak),去掉/WX 编译选项重新执行 nmake -f ms\ntdll.mak(nmake -f ms\nt.mak)
/WX这个编译选项把所有的警告当成错误来对待,只有在假警告被消除之后才能应用。有时编译警告可能是合理的,处理编译警告的核心是要发现错误,而不是抑制警告本身。这个法则对于大的程序开发小组来说很有帮助。最终目标是消除错误,而不是消除警告。
5> 运行:“nmake -f ms\ntdll.mak test”检查上一步编译是否成功。
6> 运行“nmake -f ms\ntdll.mak install”安装编译后的OpenSSL到指定目次。
如果是编译的动态库,则查看安装成果C:\openssl下包含了三个文件夹Bin、include、lib。bin下包含openssl.exe(openssl指令法度)、ssleay32.dll(ssl)、libeay32.dll(算法库)。lib下是ssleay32.dll和libeay32.dll对应的动态连接符库文件libeay32.lib,ssleay32.lib。Include目次包含了OpenSSL开辟设计的头文件。
至此,OpenSSL在windows下编译完成了。
参考:
编译动态库:
nmake -f ms\ntdll.mak
编译静态库:
nmake -f ms\nt.mak
测试动态库:
nmake -f ms\ntdll.mak test
测试静态库:
nmake -f ms\nt.mak test
安装动态库:
nmake -f ms\ntdll.mak install
安装静态库:
nmake -f ms\nt.mak install
清除上次动态库的编译,以便重新编译:
nmake -f ms\ntdll.mak clean
清除上次静态库的编译,以便重新编译:
nmake -f ms\nt.mak clean