下载perl和openssl
分别在官网下载perl和openssl压缩包
安装perl
按照默认路径安装,无需配置(我的默认路径:C:\Perl64
)
安装完成,通过在cmd中输入perl -v
判断perl是否安装成功。
安装openssl
我的VS版本为VS2019
X86环境下配置
配置VS的环境变量
原因:后面编译openssl时,将会用到vs2019自带的nmake工具。
在cmd中找到vcvars32.bat
文件路径并执行它即可完成配置。(这个文件配置了x86环境下的openssl)
但这个文件的路径在我的电脑中和网上教程不一样,我是在C盘中搜索了该文件,找到它的路径后执行的。
x64环境下openssl的编译需执行vcvars64.bat
配置openssl
在openssl路径下执行perl Configure VC-WIN32 no-asm
注意:执行此命令会报错。
错误提示:Can’t locate Win32/Console.pm in @INC (you may need to install the Win32::Console module) (@INC contains: C:\Perl64\site\lib C:\Perl64\lib) at C:\Perl64\lib/ActivePerl/Config.pm line 400.
解决办法:注释掉warn函数。
之后再执行上述命令,显示配置成功。
编译openssl
在openssl路径下依次执行:nmake
和nmake test
注意:openssl 1.1.0版本以后就不再有ms\do_*.bat这样的文件,而是直接使用nmake命令。此步骤会执行较长时间。(test时间太长我中途退出了)
安装openssl
在openssl路径下执行:nmake install
此步骤出现错误:
解决方法:https://blog.csdn.net/jzjwonderful/article/details/53305610
手动在指定目录下新建OpenSSL文件夹后再次执行:
再次手动创建bin文件夹后执行:
还是报错!!
重新以管理员身份打开一个命令界面再次在openssl路径下执行:nmake install
成功安装!
总结:以后要查看自带的安装文件,比百度查询要靠谱。
x64环境下配置
编译vcvars64
x64环境下openssl的编译需执行vcvars64.bat
配置openssl
在openssl路径下执行perl Configure VC-WIN64A no-asm
编译openssl
依次执行:
nmake
nmake test
注意1:我先安装了x86下的openssl,然后根据需要,才安装x64版本。这导致执行nmake
时冲突:fatal error LNK1112: 模块计算机类型“X86”与目标计算机类型“x64”冲突,此时执行nmake clean
将以前安装的删除,然后再执行nmake
,这样就不报错了。
注意2:nmake
和nmake test
执行时间较长。
安装openssl
执行nmake install
VS调用openssl
1.新建一个工程。
2.设置目录参数。具体步骤如下:
1)右击工程名——属性;
2)配置属性——VC++目录——在包含目录中新增"C:\Program Files (x86)\OpenSSL\include"(存放编译后的库文件的目录中,应根据自己电脑中OpenSSL\include的存放目录调整路径);
3)配置属性——VC++目录——在库目录中新增"C:\Program Files (x86)\OpenSSL\lib"(根据自己电脑中OpenSSL\lib的存放目录调整路径)。
4)配置属性——链接器——输入——附加依赖项——libcrypto.lib和libssl.lib即可。
此时可以看到引入openssl相关头文件时不再报错。