Ubuntu中安装OpenSSL
文章目录
- 一、前期准备
- 1.1 压缩包下载
- 1.2 gcc, make等的安装
- 二、安装配置
一、前期准备
1.1 压缩包下载
在安装openssl之前,我们需要下载对应的压缩包
https://www.openssl.org/source/openssl-3.0.1.tar.gz
此压缩包可以选择win上下载后解压再复制到本地虚拟机中,也可以选择直接在本地虚拟机中使用wget命令进行下载。当然,在使用wget命令时,我们需要先安装wget。
可以通过以下命令在Linux中下载openssl的压缩包
wget https://www.openssl.org/source/openssl-3.0.1.tar.gz
下载之后需要解压,最终得到名称为openssl-3.0.1的文件夹
1.2 gcc, make等的安装
由于编译需要使用gcc和make命令,因此需先安装gcc与make
sudo apt-get install g++
sudo apt-get install make
二、安装配置
在解压完压缩包和安装gcc,make之后,需要进入openssl对应的文件夹,才能进行后续操作
cd openssl-3.0.1
在对应的文件夹中执行以下命令
./config
执行完成后,会得到以下信息

之后继续在当前目录下执行make -j32和make install命令,得到如下结果。这里的-j32指的是用32线程编译,速度相较传统make更快一些

在上述两个命令后,openssl命令行文件会安装到/usr/local/bin目录中,配置文件会安装在/usr/local/ssl目录中,头文件会安装在/usr/local/include/openssl目录中,so库文件会在/usr/local/lib或/usr/local/lib64目录下。具体结果见下图
so库文件

头文件

相关文章:
Ubuntu中安装OpenSSL
文章目录 一、前期准备1.1 压缩包下载1.2 gcc, make等的安装二、安装配置 一、前期准备 1.1 压缩包下载 在安装openssl之前,我们需要下载对应的压缩包 https://www.openssl.org/source/openssl-3.0.1.tar.gz 此压缩包可以选择win上下载后解压再复制到本地虚拟机中…...
CW4-6A-S、CW4-10A-S、CW4-20A-S、CW4-30A-S螺栓式滤波器
CW3L2-3A-S、CW3L2-6A-S、CW3L2-10A-S、CW3L2-20A-S CW3-3A-S、CW3-6A-S、CW3-10A-S、CW3-20A-S、CW3-30A-S CW4EL2-3A-S、CW4EL2-6A-S、CW4EL2-10A-SCW4EL2-20A-S、CW4EL2-30A-S CW4E-3A-S、CW4E-6A-S、CW4E-10A-S、CW4E-20A-S、CW4E-30A-S CW4E-40A-S(001)、CW4E-50A-S(0…...
课程项目设计--项目设计--宿舍管理系统--vue+springboot完成项目--项目从零开始
写在前面: 本文是从项目设计到完成开始写的,本来这个项目基础功能是做完了的,但是之前时间紧张想从头做起了。之前一周写前端后端累死了. 设计是关键,这一篇主讲设计。可能后面会有修改,本人实力有限,学习的也是别人的…...
【Linux】Linux下常用搜索命令及其常用选项小结
0x00 前言 版本信息:Ubuntu 18.04.6 LTS 最后更新日期:2023.8.18 0x01 Linux下常用搜索命令及其常用选项小结 1.find (1)find path -name filename :在指定目录path查找名为filename 文件,文件名可用*匹…...
web APIs-练习五
5秒自动关闭的广告: <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"…...
MySQL——基础——外连接
一、外连接查询语法:(实际开发中,左外连接的使用频率要高于右外连接) 左外连接 SELECT 字段列表 FROM 表1 LEFT [OUTER] JOIN 表2 ON 条件...; 相当于查询表1(左表)的所有数据 包含 表1和表2交集部分的数据 右外连接 SELECT 字段列表 FROM 表1 RIGHT [OUTER] JOIN …...
spring boot 实现Redisson分布式锁及其读写锁
分布式锁,就是控制分布式系统中不同进程共同访问同一共享资源的一种锁的实现。 1、引入依赖 <dependency><groupId>org.redisson</groupId><artifactId>redisson-spring-boot-starter</artifactId><version>3.15.5</versio…...
java-IONIO
一、JAVA IO 1.1. 阻塞 IO 模型 最传统的一种 IO 模型,即在读写数据过程中会发生阻塞现象。当用户线程发出 IO 请求之后,内 核会去查看数据是否就绪,如果没有就绪就会等待数据就绪,而用户线程就会处于阻塞状态,用户线…...
Python学习笔记_基础篇(十一)_socket编程
python 线程与进程简介 进程与线程的历史 我们都知道计算机是由硬件和软件组成的。硬件中的CPU是计算机的核心,它承担计算机的所有任务。 操作系统是运行在硬件之上的软件,是计算机的管理者,它负责资源的管理和分配、任务的调度。 程序是运行…...
C#8.0本质论第三章--更多数据类型
C#8.0本质论第三章–更多数据类型 3.1类型的划分 一个类型要么是值类型,要么是引用类型。区别在于拷贝方式:值类型数据总是拷贝值;引用类型的数据总是拷贝引用。 3.1.1值类型 3.1.2引用类型 引用类型的变量存储对数据存储位置的引用。 3.…...
浅拷贝与深拷贝
作者简介: zoro-1,目前大一,正在学习Java,数据结构等 作者主页: zoro-1的主页 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖 浅拷贝与深拷贝 浅拷贝浅拷贝定义浅拷贝代码演示浅…...
背包 问题
1、背包问题 1.1、01背包 题目: 有n件物品和一个容量为m的背包,第i件物品的体积是v[ i ],价值是w[ i ],每件物品只有一件,求在不超过背包容量的前提下,可以放的物品的最大价值是多少 基本思路ÿ…...
蓝牙资讯|安卓将加强耳机音量监控,耳机查找功能将更加普遍
为了保护用户的听力健康,Android 14 将增加一项新功能,当用户使用耳机听音乐时,如果音量过高或持续时间过长,系统会发出警告,并自动降低音量。这个功能叫做“耳机音量过高警告(headphone loud sound alert&…...
vue,element。监听快捷键粘贴图片,添加到el-upload的列表。
在①中,粘贴图片,图片能够自动添加到底下el-upload组件的文件列表②。 // 对应① <el-card><el-tooltip content"粘贴图片至此" placement"top"><input readonly class"pasteImg" paste.prevent"hand…...
时序预测 | MATLAB实现基于CNN-BiLSTM卷积双向长短期记忆神经网络的时间序列预测-递归预测未来(多指标评价)
时序预测 | MATLAB实现基于CNN-BiLSTM卷积双向长短期记忆神经网络的时间序列预测-递归预测未来(多指标评价) 目录 时序预测 | MATLAB实现基于CNN-BiLSTM卷积双向长短期记忆神经网络的时间序列预测-递归预测未来(多指标评价)预测结果基本介绍程序设计参考资料 预测结果 基本介绍…...
编织梦想:SpringBoot AOP 教程与自定义日志切面完整实战
什么是 AOP AOP 是指通过预编译方式和运行期动态代理的方式,在不修改源代码的情况下对程序进行功能增强的一种技术。AOP 不是面向对象编程(OOP)的替代品,而是 OOP 的补充和扩展。它是一个新的维度,用来表达横切问题&a…...
AssignableTypeFilter 和 AnnotationTypeFilter什么区别?
在 Spring 框架中,AssignableTypeFilter 和 AnnotationTypeFilter 都是用于在组件扫描过程中进行过滤的工具类,用于筛选出特定类型或特定注解的类。它们的主要区别在于筛选的侧重点和使用方式。 AssignableTypeFilter: AssignableTypeFilte…...
TCP-事件模型
#include "main.h"VOID Server_write_error() {}/*1.打开网络库 * 2.校验网络库版本 * 3.创建SOCKET * 4.绑定IP地址和端口 * 5.开始监听 * 6.创建客户端socket/接受链接 * 7.与客户端收发消息 * 8.(6.7)两步的函数accept,send,recv 有堵塞,可…...
typescript 声明文件
作用 1、为已存在js库提供类型信息,这样在ts项目中使用这些库时候,就像用ts一样,会有代码提示、类型保护等机制 2、项目内共享类型:如果多个.ts文件中都用到同一个类型,此时可以创建.d.ts文件提供该类型,…...
BC96 有序序列判断
描述 输入一个整数序列,判断是否是有序序列,有序,指序列中的整数从小到大排序或者从大到小排序(相同元素也视为有序)。 数据范围:3≤n≤50 序列中的值都满足1≤val≤100。 输入描述 第一行输入一个整数N(3≤N≤50)。 第二行…...
阿里云效前端流水线自动化部署
一、权限准备 如果你想实现这个功能,那么你的云效必须要有权限!!这非常重要!!如何确定自己是否有相关权限呢? 流水线权限 制品仓库权限 就是云服务器的权限,这个权限是要你可以读写文件的…...
信息安全工程师-网络安全风险评估(下篇):风险计算、工具应用
一、引言风险评估是软考信息安全工程师考试中风险管理模块的核心考点,分值占比约 8%-12%,涵盖客观题、案例分析题两类题型。从技术定位来看,风险评估是连接安全需求与安全建设的核心枢纽,其输出结果直接作为安全策略制定、安全措施…...
ASML如何用“先买单后上菜”模式改写半导体设备研发规则
1. 从“被放鸽子”到“先买单后上菜”:ASML的450毫米晶圆博弈论在半导体这个以“摩尔定律”为信仰的行业里,每一次技术节点的跃进都伴随着天文数字的投入和巨大的商业风险。对于设备商而言,最怕的不是技术难题,而是倾尽所有研发出…...
别再乱打包了!手把手教你用Kali Linux和Metasploit生成免杀后门(附实战演示)
Kali Linux高级免杀技术实战:从原理到绕过Windows Defender 在渗透测试和红队演练中,后门程序的免杀能力直接决定了行动的成败。许多初学者在使用Metasploit生成基础payload后,常常发现它们被主流杀毒软件轻易拦截。本文将深入探讨免杀技术的…...
Sora 2如何“唤醒”3D Gaussian Splatting?:从神经辐射场到毫秒级动态场景生成的4层技术跃迁解析
更多请点击: https://intelliparadigm.com 第一章:Sora 2与3D Gaussian Splatting融合的范式革命 传统视频生成模型受限于体素网格或NeRF隐式表示的计算开销与几何保真度瓶颈,而Sora 2通过引入时空一致性token压缩机制,与3D Gaus…...
ARM CoreSight DAP-Lite调试架构与双协议切换技术
1. ARM CoreSight DAP-Lite技术架构解析作为ARM调试体系的核心组件,DAP-Lite(Debug Access Port Lite)是嵌入式系统开发中连接调试工具与片上资源的桥梁。我在实际芯片调试中发现,这个仅约2mm面积的IP模块,却能实现传统…...
Jellyfin智能片头检测解决方案:Intro Skipper插件技术指南
Jellyfin智能片头检测解决方案:Intro Skipper插件技术指南 【免费下载链接】intro-skipper Fingerprint audio to automatically detect and skip intro sequences in Jellyfin 项目地址: https://gitcode.com/gh_mirrors/in/intro-skipper Intro Skipper是一…...
基于Python与aiogram构建多模型AI助手:集成GPT-4、Claude与Gemini的Telegram机器人开发实践
1. 项目概述:一个多模型AI助手的自研之路 最近在折腾一个挺有意思的玩意儿,我把它叫做“AIAssistantBot”。简单来说,这是一个跑在Telegram上的机器人,但它不是那种只会回复固定指令的“傻”机器人。它的核心是整合了市面上几家主…...
CREO 6.0装配实战:别再乱拖零件了,手把手教你用‘移动’和‘角度偏移’精准定位
CREO 6.0装配实战:从零件乱飞到精准定位的进阶技巧 刚接触CREO装配模块的新手设计师,最常遇到的挫败感莫过于:明明在脑海中构思好了零件位置,实际操作时却总是出现零件"乱飞"、"定位不准"的情况。这种体验就像…...
从零到一:Lmbench 性能测试实战与结果深度解读
1. 为什么你需要Lmbench性能测试 第一次听说Lmbench时,我也和大多数新手一样困惑:系统性能测试工具那么多,为什么非要选这个老古董?直到在服务器部署项目时连续遇到三次性能瓶颈,我才真正理解它的价值。那次我们用某款…...
