openssl编译

关于windows下,openssl编译

环境准备
  1. 安装 perl:https://djvniu.jb51.net/200906/tools/ActivePerl5_64.rar

  2. 安装nasm:https://www.nasm.us/pub/nasm/releasebuilds/2.13.01/win64/nasm-2.13.01-installer-x64.exe

  3. 下载opensll源码:https://openssl-library.org/source/old/3.0/index.html

  4. 加入系统PATH变量

  5. 验证

    #验证perl
    perl --version
    #验证nasm
    nasm --version

编译

打开vs 工具=>命令行=>开发者命令提示 (如果配置环境变量之前vs已打开,则关闭vs之后重新打开),不要使用cmd,会提示找不到nmake

cpp 复制代码
#默认Release
#--prefix 需要绝对路径
perl configure VC-WIN64A --prefix=F:\project\openssl-3.0.14\build\vs2019\release\
nmake 
nmake test
nmake install

configuer option:default Release /MD

cpp 复制代码
- `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)
Debug or Release
cpp 复制代码
#Release
`perl Configure VC-WIN64A`

#debug recommand
`perl Configure VC-WIN64A --debug`
or
`perl Configure debug-VC-WIN64A`
静态库
cpp 复制代码
#如果指定no-shared则默认MT,否则默认MD
#lib & MD
perl Configure VC-WIN32 -static 

#lib & MT
perl Configure VC-WIN32 -static no-shared
/MD /MT
cpp 复制代码
#MT
perl configure VC-WIN64A -static no-shared /MTd --debug
perl configure VC-WIN64A -static no-shared /MT 
#MD
perl configure VC-WIN64A -static /MDd --debug
perl configure VC-WIN64A -static /MD 
demo
cpp 复制代码
    perl configure VC-WIN64A -static no-shared /MTd --prefix=F:\project\openssl-3.0.14\build\vs2019static\debug\ --debug
DOC
cpp 复制代码
查看源文件目录下:NOTES-*.md INSTALL.md
编译 1.x.x版本

整体和上面没有区别,当arch不匹配的时候会报错。

1.编译x86,以管理员身份打开x86 Native Tools Command Prompt for VS 2019

2.编译x64,以管理员身份打开x64 Native Tools Command Prompt for VS 2019

相关推荐
不起眼的小草1 小时前
windows系统使用nvm配置自动切换node版本
windows
齐鲁大虾2 小时前
Windows 操作系统中 SQL Server 的版本要求
windows
不惑_3 小时前
Windows 安装 Docker 和 Docker Compose 完整教程
windows·docker·容器
猫头虎3 小时前
GoLand 2025.3 最新变化:值得更新吗?
ide·windows·macos·pycharm·编辑器·intellij-idea·idea
Filotimo_3 小时前
Spring Data JPA 方法名查询特性的使用
java·开发语言·windows
啊哈哈哈哈啊有4 小时前
导出树形结构,excel
java·windows·excel
charlie1145141914 小时前
如何把 Win32 窗口“置顶”(Windows + C++)
开发语言·c++·windows·笔记·学习·软件工程
李斯维5 小时前
MBR 和 GPT 区别
windows·嵌入式硬件·bootstrap·计算机外设
what_20186 小时前
wins磁盘重新分配
windows
Warren987 小时前
datagrip新建oracle连接教程
数据库·windows·云原生·oracle·容器·kubernetes·django