您的位置:首页 > 运维架构

如何在window下编译OpenSSL

2015-10-24 14:56 246 查看
OpenSSL是一个开源的第三方库,它实现了SSL(SecureSocketLayer)和TLS(Transport Layer Security)协议

 

1、首先安装Visual Studio ,安装自己需要的使用的开发工具

2、安装ActivePerl 即Perl运行环境
http://www.activestate.com/activeperl/downloads
3、安装nasm汇编编译器  可以不安装 使用VS自带的最好省事
http://www.nasm.us
4、下载Openssl源码

5、实际编译步骤在源码的INSTALL.W32 和INSTALL.W64有写

 

具体编译步骤

WIN32版

1、打开VS命令提示 非X64版的, 运行.\bin\vcvars32.bat

2、切换到openssl源码目录

3、配置编译文件及安装目录

perl Configure VC-WIN32 –prefix=f:\Build\opensll32\

其中f:\Build\opensll32\最终生成文件所要存储的目录

4、搭建编译环境

ms\do_nasm  这个是调用nasm汇编

或者ms\do_ms    这个是调用vs自带汇编(推荐)

5、编译openssl

nmake –f ms\ntdll.mak

6、安装到3配置的目录

nmake –f ms\ntdll.mak

7、在3配置的目录里面会有:

libeasy32.lib、libeasy32.dll、ssleasy32.lib、ssleasy32.dll

 

WIN64版本

1、打开VS命令提示X64 Win64版的 运行.\bin\amd64\vcvarsamd64.bat

2、切换到 openssl 源码目录

3、配置编译文件及安装目录

perl Configure VC-WIN64A –prefix=f:\Build\opensll64\

其中f:\Build\opensll64\最终生成文件所要存储的目录

注意:有强迫症的要注意下一步

修改ms\do_win64a.bat文件

perl util\mkdef.pl 32 libeay > ms\libeay32.def

perl util\mkdef.pl 32 ssleay > ms\ssleay32.def

修改为

perl util\mkdef.pl 64 libeay > ms\libeay64.def

perl util\mkdef.pl 64 ssleay > ms\ssleay64.def

4、搭建编译环境

ms\do_nasm      这个是调用nasm汇编

或者ms\do_win64a    这个是调用vs自带汇编(推荐)

强迫症患者:

修改libeay64.def 第一行的LIBEAY32 为 LIBEAY64

ssleay64.def  第一行的SSLEAY32 为 SSLEAY64

修改ntdll.mak中

所有libeay32 和ssleay32 为libeay64 和ssleay64 不管大小写,只将32改为64即可

5、编译openssl

nmake –f ms\ntdll.mak

6、安装到3配置的目录

nmake –f ms\ntdll.mak

7、在3配置的目录里面会有:

libeasy64.lib、libeasy64.dll、ssleasy64.lib、ssleasy64.dll

8、如果没有强迫症 没有对文件进行修改生成的依然是

libeasy32.lib、libeasy32.dll、ssleasy32.lib、ssleasy32.dll   此时为64位的库
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: