E: 有几个软件包无法下载 有未能满足的依赖关系 解决办法

E: 有几个软件包无法下载 有未能满足的依赖关系 解决办法

今天sudo apt install ros-noetic-desktop-full安装ros突然遇到了一些问题,记录一下

bash 复制代码
E: 无法下载 http://cn.archive.ubuntu.com/ubuntu/pool/universe/s/simbody/libsimbody-dev_3.6.1+dfsg-7build1_amd64.deb  连接失败 [IP: 91.189.91.39 80]
E: 有几个软件包无法下载,要不运行 apt-get update 或者加上 --fix-missing 的选项再试试?

首先尝试sudo apt-get update,没用的话再修改源sudo gedit /etc/apt/sources.list ,加入

bash 复制代码
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse

我的版本是20.04,其余版本可以自行查找哈: ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

之后解压也遇到了一些问题

bash 复制代码
您也许需要运行"apt --fix-broken install"来修正上面的错误。
下列软件包有未满足的依赖关系:
 python3-rosdep-modules : 依赖: python3-catkin-pkg-modules (>= 0.4.0) 但是它将不会被安装
 python3-rosdistro-modules : 依赖: python3-catkin-pkg-modules 但是它将不会被安装
 python3-rospkg-modules : 依赖: python3-catkin-pkg-modules 但是它将不会被安装
 ros-noetic-rospack : 依赖: python3-catkin-pkg-modules 但是它将不会被安装
E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行"apt --fix-broken install"(也可以指定一个解决办法)。

先尝试sudo apt --fix-broken install,显示

bash 复制代码
dpkg: 处理归档 /var/cache/apt/archives/python3-catkin-pkg-modules_0.5.2-1_all.de
b (--unpack)时出错:
 正试图覆盖 /usr/lib/python3/dist-packages/catkin_pkg/__init__.py,它同时被包含
于软件包 python3-catkin-pkg 0.4.16-1
在处理时有错误发生:
 /var/cache/apt/archives/python3-catkin-pkg-modules_0.5.2-1_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

之后尝试运行以下命令就好了

bash 复制代码
sudo mv /var/lib/dpkg/info /var/lib/dpkg/info.bk
sudo mkdir /var/lib/dpkg/info
sudo apt-get update
sudo apt-get install -f

参考博客:

https://blog.csdn.net/creative1/article/details/125074584

https://blog.csdn.net/qq_43695961/article/details/125096706


linux报错笔记:python-rosdep-modules : 依赖: python-rosdistro-modules (>= 0.7.5) 但是它将不会被安装

python-rosdep-modules : 依赖: python-rosdistro-modules (>= 0.7.5) 但是它将不会被安装

E: Sub-process /usr/bin/dpkg returned an error code (1)解决办法

E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行"apt --fix-broken install"(也可以指定一个解决办法)。

ros下载过程中遇到了这个问题,用apt-get安装其他软件都会跳出一些依赖不会安装从而无法下载。

运行

bash 复制代码
sudo apt --fix-broken install

如果还是不能解决,就输入下面这几行

bash 复制代码
sudo mv /var/lib/dpkg/info /var/lib/dpkg/info.bk

sudo mkdir /var/lib/dpkg/info

sudo apt-get update

sudoapt-get install -f

然后就可以用apt-get下载了。


通过aptitude降级包解决依赖问题(E:无法修正错误,因为您要求某些软件包保持现状)

Linux下的依赖关系令人头疼,尤其是提示如下错误的时候:

复制代码
下列软件包有未满足的依赖关系:
xxx : 依赖: xxx 但是它将不会被安装
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。

查了一下,有很多是因为要安装的包需要依赖较低级的包,所以可以通过 sudo aptitude install 来尝试通过降级解决问题。

比如我要安装libgtk2.0-dev,但是这货的依赖都是较低版本的包,导致这个包没法安装,解决方法如下:

复制代码
sudo apt-get install aptitude
# 安装 aptitude 包管理器

sudo aptitude install libgtk2.0-dev
# 提示未满足依赖关系,给出了类似1) libcairo2-dev [未安装的] 等提示,问是否接受该解决方案?[Y/n/q/?]

n
# 不接受该解决方案,然后会提示降级下列软件包,问是否接受该解决方案?[Y/n/q/?] 

y
# 接受降级,此时会发现新安装包列表里果然有libgtk2.0-dev,然后会提示您要继续吗?[Y/n/?]

y
# 继续,确认安装

# 安装成功!其他搞不定的包也可以如此尝试,不过降级之前需要仔细看下版本号变化,如果差太多还需要慎重考虑
相关推荐
元Y亨H3 天前
华硕主机重装 Ubuntu 系统完全指南
ubuntu
字节逆旅5 天前
ubuntu应用深度守护
ubuntu
欧云服务器11 天前
怎么让脚本命令可以同时在centos、debian、ubuntu执行?
ubuntu·centos·debian
智渊AI11 天前
Ubuntu 20.04/22.04 下通过 NVM 安装 Node.js 22(LTS 稳定版)
ubuntu·node.js·vim
The️11 天前
Linux驱动开发之Read_Write函数
linux·运维·服务器·驱动开发·ubuntu·交互
再战300年11 天前
Samba在ubuntu上安装部署
linux·运维·ubuntu
qwfys20011 天前
How to install golang 1.26.0 to Ubuntu 24.04
ubuntu·golang·install
木尧大兄弟11 天前
Ubuntu 系统安装 OpenClaw 并接入飞书记录
linux·ubuntu·飞书·openclaw
小虾爬滑丫爬11 天前
ubuntu上设置Tomcat 开机启动
ubuntu·tomcat·开机启动
老师用之于民11 天前
【DAY25】线程与进程通信:共享内存、同步机制及实现方案
linux·c语言·ubuntu·visual studio code