解决方案:fatal error: openssl/bio.h: 没有那个文件或目录

出现报错如下:

出现该错误的原因有两个:

  1. 没有安装openssl或者libssl-dev库
  2. Libssl-dev版本过高,需要降级

一. 没有安装openssl或者libssl-dev库

使用指令安装openssl:

我的是已经安装完成了,所以再把libssl-dev的库也给装上就OK:

二. Libssl-dev版本过高,需要降级

如果在安装libssl-dev时出现"E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。"的错误:

则说明libssl-dev版本过高,无法支持低版本的openssl,需要讲libssl-dev库进行降级处理,安装aptitude包管理器:

安装完成后,使用sudo aptitude install xxx代替sudo apt-get install xxx,需要注意的是,使用aptitude安装软件会推荐保持当前软件包的版本,以便于保有原有的依赖关系不变,这时候我们要选择"n"不接受这个方案,aptitude会重新给出一个新的降级方案,选择"Y"即可:

等待降级即可。

相关推荐
航Hang*8 小时前
Windows Server 配置与管理——第3章:文件系统管理
运维·服务器·windows·vmware
lifewange8 小时前
Linux ps 进程查看命令详解
linux·运维·服务器
功德+n8 小时前
Linux下安装与配置Docker完整详细步骤
linux·运维·服务器·开发语言·docker·centos
杨云龙UP9 小时前
从0到1快速学会Linux操作系统(基础),这一篇就够了!
linux·运维·服务器·学习·ubuntu·centos·ssh
HXQ_晴天9 小时前
Ubuntu 设置中文输入法
linux·运维·ubuntu
Dovis(誓平步青云)9 小时前
《Linux 信号入门:搞懂 “进程通信的紧急电话” 到底怎么用(初篇)》
linux·运维·服务器
0vvv09 小时前
删除wsl环境下的Ubuntu系统
linux·运维·ubuntu
C++ 老炮儿的技术栈10 小时前
GCC编译时无法向/tmp 目录写入临时汇编文件,因为设备空间不足,解决
linux·运维·开发语言·汇编·c++·git·qt
Agent产品评测局10 小时前
企业数据处理自动化落地,抓取分析全流程实现方案 —— 2026企业级智能体选型与技术路径深度解析
运维·人工智能·ai·自动化