当前位置: 首页 > news >正文

windows10编译高版本openssl

参考文章
参考文章中的windows编译为低版本,在高版本的openssl编译中已经没有:“ms\do_ms.bat”这个脚本了,现记录下编译过程

1、准备工作

  1. 安装ActivePerl,安装后会自动写入环境变量,参照参考文章测试安装成功与否;
  2. 安装nasm,需要以管理员权限安装,安装后写入环境变量,默认安装目录为C:\Program Files\NASM
  3. 安装visual studio 2022(其他版本也可以)
  4. 前往openssl官网下载openssl源码,我下载的是 openssl-3.0.12.tar.gz

2、编译openssl

windows编译比较麻烦,区分32位和64位Debug\Release;分别说明:

2.1 编译64位Release版本

  1. 打开vs2022的x64 native tools command prompt for visual studio 2022注意一定要打开64位的工具窗口,否则接下来编译会报错。

  2. 进入解压后的openssl-3.0.12源码目录执行以下命令perl Configure VC-WIN64A --release,可能会提示没有安装dmake按照提示ppm install dmake安装即可。重新执行刚才的配置命令,配置成功如下图所示(图片为编译64位Debug版本)
    配置成功

  3. 修改生成的makefile因为Release版本要使用MT代码生成方式,否则在链接使用生成库时会发生冲突,所以需要将生成的makefile中的MD修改为MT如下图所示:
    修改MD为MT

  4. 执行nmake命令等待编译完成(10分钟左右)会在源码目录下生成对应lib文件和include文件夹,也可执行nmake test测试编译完整性。
    nmake test验证完整性

2.2、编译64位Debug版本

解压源码,在x64 native tools command prompt for visual studio 2022下进入源码目录执行以下命令:

perl Configure VC-WIN64A --debug
nmake

Debug版本无需修改makefile

2.3、编译32位Release版本

同64位编译,打开x86 native tools command prompt for visual studio 2022,进入源码执行以下命令:

perl Configure VC-WIN32 --release
nmake

在生成makefile之后需要按照64位编译一样修改makefile

2.4、编译32位Debug版本

同64位编译,打开x86 native tools command prompt for visual studio 2022,进入源码执行以下命令:

perl Configure VC-WIN32 --debug
nmake

Debug版本无需修改makefile

http://www.lryc.cn/news/217725.html

相关文章:

  • Mac之NVM|通过brew安装、更新、卸载、重新安装nvm
  • react的状态管理有哪些方法?
  • AST注入-从原型链污染到RCE
  • 【开题报告】基于uniapp的在线考试小程序的设计与实现
  • 使用pdf2image pdf转图片
  • 非关系型数据库Redis的安装【Linux】及常用命令
  • 【React】02.create-react-app基础操作
  • gcc -static 在centos stream8 和centos stream9中运行报错的解决办法
  • 【UE5 Cesium】actor随着视角远近来变化其本身大小
  • vue-render函数的三个参数
  • 数据结构与算法(Java版) | 排序算法的介绍与分类
  • Java 实现uniapp本机手机号一键登录
  • 树莓派使用Nginx搭建web网站内存利用太低了?高效远程访问试试结合内网穿透进行
  • 基于SSM的搬家预约系统
  • (论文阅读13/100)R-CNN minus R
  • Jmeter和Postman哪个做接口测试会更好
  • 【算法|二分查找No.2】leetcode 69. x 的平方根
  • AI:56-基于深度学习的微表情识别
  • Jetpack Compose 中下拉框实现
  • 输出最长公共字串
  • 学习经验分享【NO.19】YOLOv5可视化训练过程
  • 低代码可视化逻辑编排工具:JNPF
  • Redis创始人开源最小聊天服务器,仅200行代码,几天功夫已获2.8K Star!
  • RK-3399pro 萤火虫firefly 官方unbuntu 固件系统安装搜狗中文输入法
  • 2014年亚太杯APMCM数学建模大赛A题无人机创造安全环境求解全过程文档及程序
  • Java字符串常用函数 详解5000字 (刷题向 / 应用向)
  • 在RabbitMQ中 WorkQueue 工作队列 和发布(publish)/订阅(Subscribe) 有什么区别?
  • 关闭Dell xps 系列笔记本触控屏
  • 物理内存的组织形式
  • IOS渲染流程之提交图层数据至RenderThread进程