【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 可以不用运行,这是自动化测试代码是否有用

相关推荐
2301_819414301 小时前
C++与区块链智能合约
开发语言·c++·算法
不想看见4041 小时前
Valid Parentheses栈和队列--力扣101算法题解笔记
开发语言·数据结构·c++
老约家的可汗2 小时前
C/C++内存管理探秘:从内存分布到new/delete的底层原理
c语言·c++
天赐学c语言2 小时前
Linux - 应用层自定义协议与序列/反序列化
linux·服务器·网络·c++
计算机安禾2 小时前
【C语言程序设计】第37篇:链表数据结构(一):单向链表的实现
c语言·开发语言·数据结构·c++·算法·链表·蓝桥杯
阿贵---2 小时前
C++构建缓存加速
开发语言·c++·算法
波特率1152002 小时前
C++当中is-a(继承)与has-a(成员对象)的辨析与使用指南(包含实际工程当中的使用示例)
c++·ros·串口通信
Queenie_Charlie2 小时前
最长回文子串 V2(Manacher算法)
c++·算法·manacher算法
不想看见4043 小时前
C++八股文【详细总结】
java·开发语言·c++
江公望3 小时前
C++11 std::function,10分钟讲清楚
开发语言·c++