windows nmake 编译和安装 openssl
本文提供了在Windows环境下安装OpenSSL的详细步骤,包括下载Perl、NASM和VisualStudio,配置环境变量,使用PerlConfigure设置平台,通过nmake进行编译、测试和安装。整个过程涉及32位和64位版本的选择,以及针对WindowsonArm的特定版本。安装完成后,通过opensslversion命令验证安装成功。
openssl 下载
官网:https://www.openssl.org/ 下载地址:https://github.com/openssl/openssl/tree/openssl-3.0.15
1.进入官网
2.Downloads
3. github 下载
4. 选择需要的版本进行下载
5. 这里选中的是3.0.15版本,根据自己需要选择相应的版本;
注意:由于Windows 源码编译安装openssl 需要用到perl工具以及汇编工具NASM,所以需要安装perl和NASM。
Quick start
1.Install Perl
2.Install NASM
3.Make sure both Perl and NASM are on your %PATH%
4.Use Visual Studio Developer Command Prompt with administrative privileges, choosing one of its variants depending on the intended
rchitecture. Or run cmd and execute vcvarsall.bat with one of the options x86, x86_amd64, x86_arm, x86_arm64, amd64, amd64_x86,
amd64_arm, or amd64_arm64. This sets up the environment variables needed for nmake.exe, cl.exe, etc. See also
https://docs.microsoft.com/cpp/build/building-on-the-command-line
5.From the root of the OpenSSL source directory enter
perl Configure VC-WIN32 if you want 32-bit OpenSSL or
perl Configure VC-WIN64A if you want 64-bit OpenSSL or
perl Configure VC-WIN64-ARM if you want Windows on Arm (win-arm64) OpenSSL or
perl Configure to let Configure figure out the platform
6.nmake
7.nmake test
8.nmake install
Perl 下载与安装
- 官网:https://strawberryperl.com/
- 根据自己电脑系统,选则对应的32bit/64bit ZIP压缩包,下载后解压到合适目录,并配置系统环境变量 。
NASM 下载与安装
官网:https://www.nasm.us/
- 选择最新版本即可
- 选择最新版本windows64版本zip压缩包,这里是2.16.03。下载后解压到合适目录,并配置系统环境变量;
Visual Studio 下载与安装
官网:https://visualstudio.microsoft.com/zh-hans/
安装过程不赘述。
注意:选择组件是需要选上 “使用C++的桌面开发”,因为里面包含了nmake工具
完成以上准备操作后,接下来开始编译安装openssl
1.打开 visual studio 2022 命令行:
2.进入 oppensl 源码路径
参考以下提示,对应自己的机型;
5.From the root of the OpenSSL source directory enter
perl Configure VC-WIN32 if you want 32-bit OpenSSL or
perl Configure VC-WIN64A if you want 64-bit OpenSSL or
perl Configure VC-WIN64-ARM if you want Windows on Arm (win-arm64) OpenSSL or
perl Configure to let Configure figure out the platform
例如需要64位系统的openssl,输入 perl Configure VC-WIN64A,然后回车运行即可;