Windows下编译OpenSSL静态库

目录

1. 版本与下载地址

2. 下载与安装VS2015

3. 下载与安装Perl

4. 测试ActivePerl是否安装正确

5. 下载OpenSSL

6. 编译32位OpenSSL静态库

6.1 解压openssl-1.0.2l.tar.gz

6.2 打开VS2015 x86本机工具命令提示符

6.3 输入命令进入到openssl的目录中

6.4 执行配置命令

6.5 执行命令

6.6 执行生成命令

6.7 执行测试命令

6.8 执行安装命令

7. 编译64位openssl静态库

7.1 解压openssl-1.0.2l.tar.gz

7.2 打开VS2015 x64本机工具命令提示符

7.3 输入命令进入到openssl的目录中

7.4 执行配置命令

7.5 执行命令

7.6 执行生成命令

7.7 执行测试命令

7.8 执行安装命令

8. 编译静态库下载


        OpenSSL是一个功能丰富且开源的安全工具箱,它提供的主要功能有:SSL协议实现(包括SSLv2、SSLv3和TLSv1)、大量软算法(对称/非对称/摘要)、大数运算、非对称算法密钥生成、ASN.1编解码库、证书请求(PKCS10)编解码、数字证书编解码、CRL编解码、OCSP协议、数字证书验证、PKCS7标准实现和PKCS12个人数字证书格式实现等功能。

       OpenSSL采用C语言作为开发语言,这使得它具有优秀的跨平台性能,OpenSSL支持:Linux、UNIX、Android、Windows、Mac等平台。

        OpenSSL的github地址:GitHub - openssl/openssl: TLS/SSL and crypto library

        如果不想自己编译源码,那么可以直接去下载编译好的二进制文件进行安装,省事方便。

下载地址:Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions

        本文主要介绍如何在Windows下编译OpenSSL源码生成OpenSSL静态库。

1. 版本与下载地址

版本

下载地址

OpenSSL

openssl-1.0.2l.tar.gz

openssl-1.0.2l及Perl编译工具资源

Perl

ActivePerl-5.24.1.2402-MSWin32-x64-401627

openssl-1.0.2l及Perl编译工具资源

Visual Studio

Visual Studio 2015

链接:百度网盘 请输入提取码

提取码:xopt

2. 下载与安装VS2015

        从上面的下载地址,下载VS2015安装包,安装过程略。

3. 下载与安装Perl

        从上面的下载地址,下载Perl安装包,然后双击“ActivePerl-5.24.1.2402-MSWin32-x64-401627.exe”,

4. 测试ActivePerl是否安装正确

        使用cmd命令行工具,进入C:\Perl64\eg路径下,执行

cd C:\Perl64\eg
perl example.pl

        若显示“Hello from ActivePerl!”,则说明Perl安装成功。

5. 下载OpenSSL

        本文使用OpenSSL 1.0.2l,可以从上面的下载地址,下载OpenSSL 1.0.2l安装包。\

注意:编译32位和64位分别解压一次,以免环境变量

6. 编译32位OpenSSL静态库

6.1 解压openssl-1.0.2l.tar.gz

        如:D:\openssl-1.0.2l-x86

6.2 打开VS2015 x86本机工具命令提示符

        以管理员身份运行“VS2015 x86本机工具命令提示符”

6.3 输入命令进入到openssl的目录中

d:b
cd D:\openssl-1.0.2l-x86

6.4 执行配置命令

mkdir build
perl Configure VC-WIN32 no-asm --prefix=D:\openssl-1.0.2l-x86\build

6.5 执行命令

ms\do_ms

6.6 执行生成命令

        编译生成openssl静态库

nmake -f ms\nt.mak

6.7 执行测试命令

        测试openssl静态库是否正常

nmake -f ms\nt.mak test

6.8 执行安装命令

nmake -f ms\nt.mak install

        成功则会在D:\openssl-1.0.2l-x86\build目录下生成bin、include、lib、ssl四个文件夹

7. 编译64位openssl静态库

7.1 解压openssl-1.0.2l.tar.gz

        如: D:\openssl-1.0.2l-x64

7.2 打开VS2015 x64本机工具命令提示符

7.3 输入命令进入到openssl的目录中

d:
cd D:\openssl-1.0.2l-x64

7.4 执行配置命令

mkdir build
perl Configure VC-WIN64A no-asm --prefix=D:\openssl-1.0.2l-x64\build

7.5 执行命令

ms\do_win64a

7.6 执行生成命令

        编译生成openssl静态库

nmake -f ms\nt.mak  

7.7 执行测试命令

        测试openssl静态库是否正常

nmake -f ms\nt.mak test 

7.8 执行安装命令

nmake -f ms\nt.mak install 

        成功则会在D:\openssl-1.0.2l-x64\build目录下生成bin、include、lib、ssl四个文件夹。

备注:可能使用的命令

        测试OpenSSL动态库:nmake -f ms\ntdll.mak test

        测试OpenSSL静态库:nmake -f ms\nt.mak test

        安装OpenSSL动态库:nmake -f ms\ntdll.mak install

        安装OpenSSL静态库:nmake -f ms\nt.mak install

        清除上次OpenSSL动态库的编译,以便重新编译:nmake -f ms\ntdll.mak clean

        清除上次OpenSSL静态库的编译,以便重新编译:nmake -f ms\nt.mak clean

8. 编译静态库下载

        下载地址:OpenSSL Windows平台32位和64位静态库

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/375546.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

45、tomcat+课后实验

tomcat 1、tomcat tomcat和php一样,都是用来处理动态页面的。 tomcat也可以作为web应用服务器,开源的。 php .php tomcat .jsp nginx .html tomcat 是用Java代码写的程序,运行的是Java的web应用程序。 tomcat的特点和功能&#xff1a…

运维系列.Nginx中使用HTTP压缩功能

运维专题 Nginx中使用HTTP压缩功能 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/qq_28550…

鸿蒙系统:未来智能生态的引领者

在当今这个日新月异的互联网领域,操作系统作为连接硬件与软件的桥梁,其重要性不言而喻。随着华为鸿蒙系统(HarmonyOS)的崛起,一场关于操作系统未来的讨论再次被推向高潮。 鸿蒙OS,华为的全新力作&#xff…

注册自定义总线

1、在/sys/bus下注册一个自定义总线 #include<linux/module.h> #include<linux/init.h> #include<linux/kernel.h> #include<linux/kobject.h> #include<linux/slab.h> #include<linux/sysfs.h> #include<linux/device.h> #include…

静态路由配置注意事项及黑洞路由的使用

静态路由 1 . 定义 从管理员处学习到的数据转发路径&#xff0c;就称为静态路由。 2 . 路由表 Proto &#xff1a;协议&#xff08; Protocol &#xff09; Direct — 直连链路Static — 静态路由RIP 、OSPF 等 — 动态路由 Pre : 优先级&#xff08; Preference &#x…

Threejs环境、透视相机、坐标系、光源

文章目录 如何引入threejsnpm方式script方式script module方式 基本流程与坐标摄像机Geometry(几何体)和Material(材质)光源 如何引入threejs 对于很多刚刚上手threejs的朋友&#xff0c;可能第一步引入threejs就出问题了&#xff0c; 明明已经导入了&#xff0c;就是这样问题…

测试状态缩略语

术语和缩写解释Pass当测试用例执行完成后&#xff0c;测试结果符合预期结果的情况下&#xff0c;则该测试用例判断为测试通过Fail当测试用例执行完成后&#xff0c;测试结果与预期不符的情况下&#xff0c;则该测试用例判断为测试不通过。NA表示测试结果为"不适用"或…

dataX入门

下载dataX https://datax-opensource.oss-cn-hangzhou.aliyuncs.com/202308/datax.tar.gz 然后 下载后解压至本地某个目录&#xff0c;进入bin目录&#xff0c;即可运行同步作业&#xff1a; $ cd {YOUR_DATAX_HOME}/bin $ python datax.py {YOUR_JOB.json} 要求你有python…

[Vulnhub] Stapler wp-videos+ftp+smb+bash_history权限提升+SUID权限提升+Kernel权限提升

信息收集 IP AddressOpening Ports192.168.8.106TCP:21,22,53,80,123,137,138,139,666,3306, Using Nmap for scanning: $ nmap -p- 192.168.8.106 --min-rate 1000 -sC -sV The results are as follows: PORT STATE SERVICE VERSION 20/tcp closed ftp-data…

Tomcat的安全配置

1、生产环境优化 2、部分漏洞修复 转载自风险评估&#xff1a;Tomcat的安全配置&#xff0c;Tomcat安全基线检查加固-CSDN博客

【排序算法】归并排序

目录 一.基本思想 二.递归版本 三.非递归版本 四.特性总结 1.时间复杂度&#xff1a;O(N*logN) 2.空间复杂度&#xff1a;O(N) 3.稳定性&#xff1a;稳定 一.基本思想 归并排序是采用分治法的一个非常典型的应用。它将已经有序的序列合并为完全有序的序列&#xff0c;即…

算法学习day10(贪心算法)

贪心算法&#xff1a;由局部最优->全局最优 贪心算法一般分为如下四步&#xff1a; 将问题分解为若干个子问题找出适合的贪心策略求解每一个子问题的最优解将局部最优解堆叠成全局最优解 一、摆动序列&#xff08;理解难&#xff09; 连续数字之间的差有正负的交替&…

如何将libwebsockets库编译为x86架构

在之前的文章中&#xff0c;我们已经详细介绍了如何交叉编译libwebsockets并将其部署到ELF 1开发板上。然而在调试阶段&#xff0c;发现将libwebsockets在Ubuntu环境下编译为x86架构可能更为方便和高效。 通过在主机环境中编译运用x86架构下的libwebsockets库&#xff0c;可以…

2024年,搞AI就别卷模型了

你好&#xff0c;我是三桥君 2022年11月30日&#xff0c;OpenAI发布了一款全新的对话式通用人工智能工具——ChatGPT。 该工具发布后&#xff0c;仅用5天时间就吸引了100万活跃用户&#xff0c;而在短短2个月内&#xff0c;其活跃用户数更是飙升至1亿&#xff0c;成为历史上增…

github的使用

1.如何将代码会滚到某个提交之前 在GitHub上将代码回滚到之前的版本&#xff0c;可以通过Git命令行实现。以下是几种常用的方法来实现回滚&#xff1a; 方法一&#xff1a;使用 git revert git revert 会生成一个新的提交&#xff0c;这个提交会撤销之前的某个提交的更改。这…

【ARMv8/v9 GIC 系列 1.7 -- GIC PPI | SPI | SGI | LPI 中断使能配置概述】

请阅读【ARM GICv3/v4 实战学习 】 文章目录 GIC 各种中断使能配置PPIs(每个处理器私有中断)SPIs(共享外设中断)SGIs(软件生成的中断)LPIs(局部中断)GIC 各种中断使能配置 在ARM GICv3和GICv4架构中,不同类型的中断(如PPIs、SPIs、SGIs和LPIs)可以通过不同的方式进…

allWebPlugin中间件实现ActiveX插件在谷歌、火狐、Edge浏览器使用

下载并安装allWebPlugin中间件 1、请从下面地址下载allWebPlugin中间件产品&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1xUyQDzOabh7mU7J7TYhtig?pwdz3q0 提取码&#xff1a;z3q0 如下图所示&#xff0c;下载最新allWebPlugin_x86_v2.0.0.14_stable_20240707…

CUDA原子操作

代码 #include <cuda_runtime.h> #include <stdio.h>__global__ void atomicAddAndGet(int *result, int *valueToAdd) {// 原子加法int addedValue atomicAdd(result, *valueToAdd);// 通过原子操作后读取值&#xff0c;确保是加法后的值addedValue *valueToAd…

三级_网络技术_04_中小型网络系统总体规划与设计

1.下列关于路由器技术特征的描述中&#xff0c;正确的是()。 吞吐量是指路由器的路由表容量 背板能力决定了路由器的吞吐量 语音、视频业务对延时抖动要求较低 突发处理能力是以最小帧间隔值来衡量的 2.下列关于路由器技术特征的描述中&#xff0c;正确的是()。 路由器的…

RGB LCD 彩条显示实验

目录 一.RGB TFT-LCD简介 1.1分辨率 1.2像素格式 1.3LCD屏幕接口 1.4LCD时间参数 1.5RGB LCD屏幕时序 1.6像素时钟 二.实验任务 三.模块设计与仿真 3.1读ID模块设计 3.1.1模块设计 3.1.2波形绘制 3.1.3modelsim仿真波形 3.2时钟分频模块 3.2.1模块设计 3.2.2绘制…