在Windows下编译OpenSSL
前些日子因为要用到证书,所以用到了OpenSSL,也因当时要得及,直接用别人已经生成好了的DLL在做。
首先说明,在下的水平是相当的有限,反正我是希里糊涂的生成成功了,所以不要为我为啥子。
我是参照OpenSSL的文档做的,就是那个INSTALL.W32文件。是E文的。
开始:
1。前期准备
1)下载ActivePerlWin32版本
下载地址:http://www.activestate.com/ActivePerl
我下载的不是安装包,是压缩包,在ActivePerl里叫AS package,版本是:ActivePerl 5.8.8.819。
下载后,解压到D:\ActivePerl,备用。
2)下载OpenSSL
下载地址:http://www.openssl.org/
我下载的版本为:openssl-0.9.8d
下载后,解压到D:\OpenSSL,备用。
3)下载微软的汇编编译器MASM
下载地址:我是在80x86汇编小站上去下载的。注意不要下载到MASM32的去了。地址是:
http://www.x86asm.com/DisplayArticle.asp?BoardID=8&ArticleID=63
版本是:6.11
下载后解压到D:\masm,备用。
4)要求要安装有VC++的编译器,我安装的是2003版本的。
2。开始编译
1)从开始-->Microsoft Visual Studio .NET 2003-->Visual Studio .NET 工具-->Visual Studio .NET 2003 命令提示进入命令行,因为从这里进去后,和C++相关的环境变量都已经设置好了。
2)设置环境变量
1.设置ActivePerl的环境变量
在命令行窗口执行:
>set path=%path%;D:\ActivePerl\perl\bin
这里的D:\ActivePerl\perl\bin要和你实际的安装位置对应,下同。
2.设置MASM的环境变量
在命令行窗口中执行:
>set path=%path%;D:\masm\bin
3)生成
1.转到OpenSSL的目录下面去,初始化一下,可能像:
>cd D:\OpenSSL
>perl Configure VC-WIN32 --prefix=d:\some\openssl\dir
这里的d:\some\openssl\dir是在安装的时候要用到的,现在我们不讲安装,但还是要执行这一步。不然最后一步的编译有问题。
2.生成汇编
>ms\do_masm
3.生成DLL
>nmake -f ms\ntdll.mak
在经历了漫长的编译过程后。
如果成功的话,你就会在OpenSSL的out32dll下看到一些dll和exe文件了。
好运。