openssl官网不再提供编译好的二进制文件,所以得自己编译。
准备工作
需要安装的软件
-
ActivePerl l5.24.3 (我测试了15.26、15.28,均报错)
-
Nasm (我测试的是2.14.02,其他版本应该不影响)
-
VC编译器(我测试了VS2015、VS2017)
编辑变量
PATH中加入ActivePerl和NASM
下载源码
可以在官网上下载 https://www.openssl.org/source/
也可以在github上git clone https://github.com/openssl/openssl
开始编译
编译流程
- 在开始菜单里找到并打开vs2015编译命令行:"x64 Native Tools Command Prompt for VS 2015"
- cd 到 openssl 源码目录
- Perl Configure VC-WIN64A --prefix=<导出目录>
- nmake install
出错排查
出现'rc' is not recognized as an internal or external command,
在磁盘上搜索rc.exe,把rc.exe所在目录加入PATH,如:
set PATH=C:\Program Files (x86)\Windows Kits\8.1\bin\x64;%PATH%
出现Undefined subroutine &Win32::Console::STD_OUTPUT_HANDLE
原因是缺少Win32::Console模块,我尝试用ppm install Win32-Console-ANSI安装,但是没能成功。 最后把Perl版本换成l5.24.3得以解决。