解决方案: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"即可:

等待降级即可。

相关推荐
lxw18449125148 分钟前
docker 核心技术浅析
运维·docker·容器
梁正雄1 小时前
14、Docker swarm-1-理论
运维·docker·容器
❀͜͡傀儡师1 小时前
docker离线镜像文件选择导入脚本
运维·docker·容器
筑梦之路1 小时前
docker ubuntu22.04更新报错问题——筑梦之路
运维·docker·容器
阿巴~阿巴~1 小时前
深入理解sigaction函数:Linux信号处理机制与使用指南
linux·运维·服务器·信号处理
_dindong2 小时前
Linux网络编程:进程间关系和守护进程
linux·运维·服务器·网络·c++·学习
zt1985q3 小时前
本地部署消息中间件 RabbitMQ 并实现外网访问 (Linux 版本)
linux·运维·服务器·windows·分布式·rabbitmq
tb_first3 小时前
Linux入门2(1/3)
linux·运维·服务器
鼓掌MVP3 小时前
通过MCP协议结合腾讯云Lighthouse
大数据·运维
久曲健的测试窝3 小时前
Jenkins Share Library教程 —— 企业级 Jenkins Shared Library 实战示例
运维·jenkins