VS2010编译OpenSSL

OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用。对于一般的开发人员而言,在http://slproweb.com/products/Win32OpenSSL.html 上下载已经编译好的OpenSSL库是省力省事的好办法。对于高级的开发用户,他们可能需要适当的修改或者裁剪OpenSSL,那么编译它就成为了一个关键问题。本篇博客就是主要讲述如何早Windows上编译OpenSSL库?

笔者按照一定的步骤成功了编译了OpenSSL库,步骤如下:

1)在微软网站下载并安装VS Studio,连接如下:http://msdn.microsoft.com/subscriptions/downloads/#searchTerm=&ProductFamilyId=529&Languages=en&PageSize=10&PageIndex=0&FileId=0。

2)从http://www.activestate.com/activeperl/downloads 下载并安装ActivePerl。

3)从http://www.nasm.us/ 下载并安装Nasm汇编器。

nasm的安装路径 D:\Program Files (x86)\NASM,需增加到环境变量path中。

4)从http://www.openssl.org/下载并安装OpenSSL的最新Release包。

这里需要强调的是,读者未必需要完全按照笔者的步骤编译OpenSSL库,这里的部分次序是可以互换的。

 

在完成所有上述5步后,我们就可以解压缩OpenSSL包,在对它进行修改便可以编译了。在解压缩后,所有的源代码放在openssl- 1.0.1e目录下,在此目录下,有两个文件INSTALL.W32, INSTALL.W64需要被关注。打开其中的任何一个文件,你会看到如何编译OpenSSL的各个步骤。这里,笔者将会再啰嗦一下。


1)打开VS Studio命令行工具,如图1所示。

若编译32位OpenSSL库,请打开Visual Studio 命令提示(2010)。

若编译64位OpenSSL库,请打开Visual Studio x64 Win64 Command Prompt。

VS2010编译OpenSSL_第1张图片

图1

2)配置编译文件及安装目录;

set path=%path%E:\openssl\openssl-1.0.1e;D:\Program Files (x86)\NASM

或 cd E:\openssl\openssl-1.0.1e

         编译Win32:perl Configure VC-WIN32 --prefix=E:\openssl\openssl-1.0.1e\OutDir\32

         编译Win64:perl Configure VC-WIN64A --prefix=E:\openssl\openssl-1.0.1e\OutDir\64

E:\openssl\openssl-1.0.1e\OutDir\XX”目录可以改成任何你希望的安装目录

3)搭建编译环境:

         nasm汇编器:ms\do_nasm

         vc汇编器: ms\do_ms

对于64位编译,将ms\do_ms替换成ms\do_win64a

4)编译OpenSSL

 编译动态库: nmake -f ms\ntdll.mak
 编译静态库: nmake -f ms\nt.mak

5)安装编译生成的库到“E:\openssl\openssl-1.0.1e\OutDir\XX

 测试动态库: nmake -f ms\ntdll.mak test
测试静态库: nmake -f ms\nt.mak test

安装动态库: nmake -f ms\ntdll.mak install
安装静态库: nmake -f ms\nt.mak install


注:若是编译有问题,可以尝试换旧版本来解决。

转载于:https://my.oschina.net/Draymond/blog/1017483

你可能感兴趣的:(c/c++)