【openssl】Window系统如何编译openssl

本文主要记录如何编译出windows版本的openss的lib库

如果需要获取RSA公钥私钥,推荐【openssl】 生成公钥私钥 |通过私钥获取公钥-CSDN博客

目录

1.下载openssl,获得openssl-master.zip。

2.下载Perl

3.下载NASM

4.配置perl和NASM的环境变量

5.进入编译正题:

至此:大侠已成功

6说明


1.下载openssl,获得openssl-master.zip。

a.可以通过github(网址在下方)上下载最新的代码、今天是2023.12.1我用的master版本,下载之后恭喜大侠获得《openssl-master.zip》

网址:https://github.com/openssl/openssl

b解压zip到自己的路径:F:\Windows\openssl-master

c.新建一个文件夹F:\Windows\openssl_Output

用于输出之后大侠最后编译的库(就是大侠最终想要的东西)

2.下载Perl

a.(编译工具)我没有去官网下载,要注册啥的很麻烦,小网站下载了一个能用的

点击下面链接直接下载

网址:https://djvniu.jb51.net/200906/tools/ActivePerl5_64.rar

3.下载NASM

a.点击下面链接直接下载

https://www.nasm.us/pub/nasm/releasebuilds/2.16.01/win64/nasm-2.16.01-installer-x64.exe

4.配置perl和NASM的环境变量

a.配置上面两个安装包的环境变量,具体环境变量怎么进入可参考

此电脑右键->属性->高级系统设置->环境变量->系统变量->Path编辑新建添加

b.添加完进行验证是否安装及配置成功

I.进入命令管理器cmd

II.分别输入nasm --version、perl --version,显示版本信息,

如果输出的不是内部或外部命令,也不是可运行的程序或批处理文件,应该是检查:第4步配置的perl.exe、nasm.exe路径是否正确配置环境变量未重启电脑

cpp 复制代码
nasm --version

5.进入编译正题:

如果以下编译出现错误,说明此文章编译方式未不同步源码库的编译方式。如何查看源码库的编译方式,请参考6.说明

a.以管理员身份启动(否则下面会报无权限问题)启动vs编译工具;查找Tools Command.根据想编译32位还是64位openssl选择X64、x86(32位选x86;64位选x64),我用的x64。

b.通过F:进入F盘符,通过cd命令进入你解压的源码库

c.进行

I.下面的VC-WIN64A是64位,如果想编译32位用VC-WIN32,F:\Windows\openssl_Output是输出路径

cpp 复制代码
perl Configure VC-WIN64A --prefix=F:\Windows\openssl_Output

II.安装

cpp 复制代码
nmake install

至此:大侠已成功

在Output下都是想要的

6说明

至于上述步骤5是编译是怎么来的。参考的源码库中的NOTES_WINDOWS.md,同目录下有unix的编译方式。

nmake test 可以不用运行,这是自动化测试代码是否有用

相关推荐
c2385635 分钟前
MySQL 基础用法(上):库表管理与数据增删改
c语言·数据库·c++·mysql
光源【时光寸寸又逢君】1 小时前
第三方平台预览我方级联监控点串流问题排查
c++·iot
键盘会跳舞2 小时前
C++:容器适配器 queue 的源码级拆解
开发语言·c++·queue
YuforiaCode3 小时前
第十六届蓝桥杯 2025 C/C++组 数列差分
c语言·c++·蓝桥杯
千里之行,始于足下sanhai3 小时前
P8686 [蓝桥杯 2019 省 A] 修改数组 - 数字魔法大冒险 题解
c++·算法·动态规划
小星星闪亮登场3 小时前
Codeforces Round 1115 ( Div. 2)
数据结构·c++·算法·贪心算法·排序算法·codeforces
Loge编程生活3 小时前
打卡信奥刷题(3449)用C++实现信奥题 P10429 [蓝桥杯 2024 省 B] 拔河
开发语言·数据结构·c++·算法·青少年编程
lilili也6 小时前
visual studio add matlab
c语言·c++
沫璃染墨6 小时前
《Qt从零入门系列(一):Qt框架初识——从发展历史到跨平台开发》
c++·qt·系统架构·gui
(Charon)7 小时前
【C++】多线程死锁:产生原因、复现与解决方法
开发语言·c++·算法