您当前的位置:首页 > 计算机 > 系统应用 > Windows

openssl在windows环境安装编译步骤

时间:01-18来源:作者:点击数:
城东书院 www.cdsy.xyz

1 下载openssl源码

我下载的是稳定发布版本OpenSSL_1_1_1c,openssl官网下载地址https://www.openssl.org/source/,github下载地址https://github.com/openssl/openssl/releases

另,编译说明里,如果要本地优化,还需要下载Nasm,但实际上我们没那么多要求,直接用no-asm选项可以跳过,因此不需要下载Nasm,如要下载,Nasm下载地址为https://sourceforge.net/projects/nasm/

2 下载安装ActivePerl

  • 2.1 我下载的是ActivePerl-5.26.1.2601-MSWin32-x64-404865.exe,下载地址https://www.activestate.com/products/activeperl/downloads/
  • 2.2 测试是否安装成功
  • 命令行切换至安装目录,默认为 C:\Perl64\eg
  • 输入 perl example.pl
  • 输出 Hello from ActivePerl! 则安装成功

3 下载安装Visual Studio 2015或其它VS版本

4 编译32位打开"VS2015 x86 本机工具命令提示符",编译64位打开"VS2015 x64 本机工具命令提示符",进入到openssl解压目录,cd /d E:\tools\openssl\openssl-OpenSSL_1_1_1c,每次编译之前重新解压一个新的临时目录E:\tools\openssl\openssl-OpenSSL_1_1_1c以免编译时报错

5 编译,等待执行结束

编译平台及其对应指令集
编译类型 编译执指令
编译32位动态库debug版本 perl Configure debug-VC-WIN32 no-asm --prefix="E:\tools\openssl\openssl111\build_debug32"
编译32位动态库Release版本 perl Configure VC-WIN32 no-asm --prefix="E:\tools\openssl\openssl111\build_release32"
编译64位动态库debug版本 perl Configure debug-VC-WIN64A no-asm --prefix="E:\tools\openssl\openssl111\build_debug64"
编译64位动态库Release版本 perl Configure VC-WIN64A no-asm --prefix="E:\tools\openssl\openssl111\build_release64"
编译32位静态库debug版本 perl Configure debug-VC-WIN32 no-asm no-shared --prefix="E:\tools\openssl\openssl111\build_debug32_static"
编译32位静态库Release版本 perl Configure VC-WIN32 no-asm no-shared --prefix="E:\tools\openssl\openssl111\build_release32_static"
编译64位静态库debug版本 perl Configure debug-VC-WIN64A no-asm no-shared --prefix="E:\tools\openssl\openssl111\build_debug64_static"
编译64位静态库Release版本 perl Configure VC-WIN64A no-asm no-shared --prefix="E:\tools\openssl\openssl111\build_release64_static"

6 执行nmake等待执行结束

7 执行 nmake test 等待执行结束(比较耗时,可以不执行验证)

8 执行 nmake install 等待执行结束

9 至此完成,在--prefix=指定的目录下会生成目录文件夹bin、html、include、lib四个目录,

编译生成文件:

静态库版本:头文件、libcrypto.lib、libssl.lib

动态库版本(32位):头文件、libcrypto.lib、libssl.lib、libcrypto-1_1.dll、libssl-1_1.dll

动态库版本(64位):头文件、libcrypto.lib、libssl.lib、libcrypto-1_1-x64.dll、libssl-1_1-x64.dll

第6步nmake时编译提示错误:NMAKE : fatal error U1077: “rc”: 返回代码“0x1”

分析原因:

将Rc.exe路径添加到系统环境变量PATH,我的路径是:

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Bin

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Bin\x64

注意:

如果是需要静态库,需要加上no-shared参数,且必须先安装dmake工具,用vc自带的nmake会失败,安装指令是在perl安装完成后,以管理员权限打开命令行,执行ppm install dmake,这需要联网执行。

加了 no-shared 以后,最后的nmake install命令可能会失败,这时候需要手动拷贝一下。

另:

参数 含义
debug-VC-WIN32 编译32位debug版本
VC-WIN32 编译32位release版本
debug-VC-WIN64A 编译64位debug版本
VC-WIN64A 编译64位release版本
城东书院 www.cdsy.xyz
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门