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位静态库

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

一文洞悉巴基斯坦电子游戏出海引流获客广告风口不容忽视

一文洞悉巴基斯坦电子游戏出海引流获客广告风口不容忽视 随着全球数字经济的蓬勃发展,电子游戏行业也迎来了前所未有的机遇。巴基斯坦,这个拥有庞大人口基数和日益增长的消费能力的国家,其电子游戏市场潜力巨大。本文旨在探讨巴基斯坦电子游戏…

tomcat安装

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

首席数据官CDO证书报考指南:方式、流程、适考人群与考试难度

在信息泛滥的今天,数据已转变为企业不可或缺的宝贵资源。 面对海量的信息,如何提炼出价值,为企业带来实质性的收益?首席数据官(CDO)认证的出现正是为了满足这一需求,它不仅是个人专业能力的体现…

AI Earth——1990-2022年全国月度气象数据检索应用app

应用结果 代码 #导入安装包 import os import json import datetime import streamlit as st import streamlit.components.v1 as components import traceback from PIL import Imageimport aie#读取当前目录的内容 current_work_dir = os.path.dirname(__file__) #添加地图…

简单的Java面向对象小游戏并使用三层架构(表示层、业务逻辑层、数据访问层)

本人详解 作者:王文峰,参加过 CSDN 2020年度博客之星,《Java王大师王天师》 公众号:JAVA开发王大师,专注于天道酬勤的 Java 开发问题中国国学、传统文化和代码爱好者的程序人生,期待你的关注和支持!本人外号:神秘小峯 山峯 转载说明:务必注明来源(注明:作者:王文峰…

AE-时间轴的基础操作

目录 预览(快捷键空格) 调整时间线显示比例(Alt鼠标滚轮) 控制预览长度(B/N) 逐帧移动(笔记本:按住fn上下方向键) 视频剪切(ctrlshiftD) 剪…

数据结构:顺序表+链表

数据结构:顺序表链表 一。顺序表: 首先在了解顺序表和链表之前,先了解一下线性表,**线性表(linear list)**是n个具有相同特征元素的有限序列 ,在逻辑上是线性结构,也就是一条连续的…

深入剖析预处理

目录 1.预定义符号 2.#define 定义常量 3.#define定义宏 4.带有副作用的宏参数 5.宏替换的规则 6.宏函数的对比 7.#和## 7.1 #运算符 7.2 ## 运算符 8.命名约定 9.#undef 10.命令行定义 11.条件编译 12.头文件的包含 12.1 头文件被包含的方式: 12.1…

React setState

老生常谈之setState 是同步的还是异步的? 设想setState是同步的,那也就是每次调用setState都要进行新旧虚拟DOM的对比,然后将差异化的dom更新到页面上,性能损耗很大 所以react把setState设置为了异步,当状态更新时不…

基于springboot+vue实现的厨艺交流平台(文末源码+Lw)093

93基于SpringBootVue的实现的厨艺交流平台(源码数据库万字Lun文流程图ER图结构图演示视频软件包) 系统功能: 这次开发的厨艺交流平台功能有个人中心,食材分类管理,用户管理,菜品分类管理,菜谱信…

【Axure】产品原型如何在谷歌浏览器中打开

作为一名前端开发来说,在拿到产品的原型图后,如何打开?直接用谷歌浏览器打开,是打不开的,需要安装对应的插件。但是谷歌插件市场在不翻墙的情况下,是没有办法直接打开的,分享一种超级简单的方法…

Softmax回归中的损失函数

目录 一、损失函数介绍: 因为Softmax回归时逻辑回归的推广,所以Softmax回归的损失函数是逻辑回归损失函数的推广。 原文链接:逻辑回归中的损失函数 一、损失函数介绍: 与回归问题成本函数不同的是,Softmax回归模型&a…

python-小杨的储蓄(赛氪OJ)

题目描述 小杨共有 N 个储蓄罐,编号从 0 到 N−1。从第 1 天开始,小杨每天都会往存钱罐里存钱。具体来说,第 i 天他会挑选一个存钱罐 ai​,并存入 i 元钱。过了 D 天后,他已经忘记每个储蓄罐里都存了多少钱了&#xff…

如何网页在线编辑微软Office Word,并导出为PDF格式。

随着互联网技术的不断发展,越来越多的企业开始采用在线办公模式,微软Office Word 是最好用的文档编辑工具,然而doc、docx、xls、xlsx、ppt、pptx等格式的Office文档是无法直接在浏览器中直接打开的,如果可以实现Web在线预览编辑Of…

Vue3 pdf.js将二进制文件流转成pdf预览

好久没写东西,19年之前写过一篇Vue2将pdf二进制文件流转换成pdf文件,如果Vue2换成Vue3了,顺带来一篇文章,pdf.js这个东西用来解决内网pdf预览,是个不错的选择。 首先去pdfjs官网,下载需要的文件 然后将下载…

通用后台管理(二)——项目搭建

目录 前言 一、安装vue-cli依赖 1、使用yarn下载vue-cli 2、使用npm下载 3、检查一下是否下载成功 二、创建项目 1、创建项目,my-app是项目名称 2、 这里选择vue 2,蓝色表示选中的。 3、启动项目 三、下载项目依赖 四、配置项目 1、修改esli…

哪些独立站外链策略最有效?

在当前的SEO领域中,独立站外链策略的效果差异很大,但GPB外链无疑是其中最为有效的一种。GPB外链,指的是通过高质量、包收录且dofollow的顶级域名独立站来获得外链,这种外链策略能够显著提升目标网站的整体排名数据。 关键词排名的…

最全 Steam 流操作!!!Java Stream 流操作常用 API

文章目录 Java Stream 流操作常用 API一、准备工作二、Stream 常用 API1、sorted 排序2、list 转为 map(并解决重复key问题)3、filter 方法过滤指定查询条件4、根据指定列分组5、通过 map 获取指定列集合6、根据 List 中 Object 某个属性去重7、list 统计(求和、最大…

Nignx配置

Nginx配置之nginx.conf文件解析及配置 1、nginx.conf文件解析 user www-data; worker_processes auto; pid /run/nginx.pid; include /etc/nginx/modules-enabled/*.conf;events {worker_connections 768;# multi_accept on; }http {### Basic Settings###开启文件的高效传输…

RK3568------Openharmony 4.0-Release WIFI/BT模组适配

RK3568------Openharmony 4.0-Release WIFI/BT模组(ap6236)适配 文章目录 RK3568------Openharmony 4.0-Release WIFI/BT模组(ap6236)适配前言一、驱动移植二、设备树配置三 、内核配置四、遇到的问题五、效果展示总结 前言 随着RK3568适配工作的推进,整体适配工作…