一、准备工作(附件会提供所有)

1.下载VS2017并安装(注:建议更改目录以后,手动添加环境变量,不然各种莫名其妙问题

下载链接:https://docs.microsoft.com/en-us/visualstudio/releasenotes/vs2017-relnotes

2.下载Activeperl并安装,本文用的ActivePerl-5.26.0.2600-MSWin32-x86-64int-403866,主要是想编译32位程序,再有就是官网提供的好像只有最新的64位(注:建议默认路径,不会有稀奇古怪的问题

下载链接:https://www.activestate.com/activeperl/downloads

3.下载OpenSSL,本文用的是openssl-1.1.1d.tar.gz

下载链接:https://www.openssl.org/source/

附上别人编译好的exe链接:http://slproweb.com/products/Win32OpenSSL.html

4.下载NASM,本文用的nasm-2.13.01-installer-x64.exe(非必须使用项,可以编译时通过参数屏蔽,注:这个也建议默认安装路径,不然会出一些稀奇古怪的问题,建议手动添加上环境变量

下载链接:http://www.nasm.us/pub/nasm/releasebuilds/?C=M;O=D

二、注意事项

注:所有安装完以后,手动添加完环境变量以后友情提醒:重启!重启!重启!说的就是windows10,不重启会发现一些莫名的问题,如果没有报找不到dmake.exe,不需要安装dmake,也不需要加这个路径;每编译一次,建议将源码压缩包解压一次,用新解压的包进行编译,如果不用新解压的,好像也会出现莫名其妙的问题,例如LNK错误。

三:具体步骤:

1.编译工具(主要还是使用VC编译)

开始=》菜单找到VS2017文件夹中的命令行,因为博主要编译32位的,所以选择32位的,顺带提一下,我安装的VS2017貌似没有“适用于 VS 2017 的 x86 本机工具命令提示符”那就选用如下图的命令提示符吧,注:一定要用管理员身份运行,不然有的问题不报错

2.编译主要OpenSSL命令(参考:好像是源码里有步骤,忘了):

(1)nmake:编译

(2)nmake test:执行自带的例子,如果通过最终会有一个pass

(3)nmake install:生成编译结果

3.具体执行:

(1)需要几个文件夹,OpenSSL源码解压路径(本文:E:\OpenSSL\OpenSSL),生成OpenSSL编译结果路径(本文:E:\OpenSSL)

(2)从上边说的打开的32位的VS2017命令框,因为要编译32位的动态库,将其目录切换到OpenSSL解压路径:

(3)配置参数(编译32位debug动态库,将生成结果生成到E:\OpenSSL路径)

perl Configure debug-VC-WIN32 --prefix=E:\OpenSSL    :编译debug版本,不设置这个参数,默认编译release版本

(或者这个:perl Configure VC-WIN32 no-asm --prefix=E:\OpenSSL  :这个就是上边说的NASM是非必安装项,通过参数屏蔽)

执行以后会发现和网上编译1.1.0版本显示的不一样,当时我也懵了半天

(4)然后执行nmake,等待编译完成,有可能某个文件会编译很久,需要等待

(5)执行nmake test

 执行完所有用例结果如下,会有一个pass

(6)执行nmake install

等待执行完成以后,路径下会自动生成这几个文件夹

至此,编译基本完成,release版本相同操作,只是配置参数不同,如果要编译静态库也是配置参数就行,编译步骤不变 

四、一些问题:

(1)Failure! build file wasn't produced. Please read INSTALL and associated NOTES files. You may also have to look over your available compiler tool chain or change your configuration. NASM not found - make sure it's installed and available on %PATH%

解决:安装默认路径,手动添加环境变量,重启

(2)It looks like you don't have either nmake.exe or dmake.exe on your PATH, so you will not be able to execute the commands from a Makefile. You can install dmake.exe with the Perl Package Manager by running: ppm install dmake

解决:使用附件中的Dmake,配置环境变量,重启;或者前边的所有编译软件默认路径安装,添加环境变量,应该不会报这个错,VS不要默认路径

五、附件如下:

附件编译的是openssl-1.1.1g.tar.gz,但是源码openssl-1.1.1d.tar.gz也在附件里

https://download.csdn.net/download/qq_27415615/12689113

 

GitHub 加速计划 / ope / openssl
25.13 K
9.99 K
下载
传输层安全性/安全套接层及其加密库
最近提交(Master分支:1 个月前 )
fd39d1c8 Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/25095) 2 个月前
ae87c488 Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/25095) 2 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐