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
# 继续,确认安装

# 安装成功!其他搞不定的包也可以如此尝试,不过降级之前需要仔细看下版本号变化,如果差太多还需要慎重考虑
相关推荐
逢生博客8 小时前
Ubuntu 安装 gvm 管理 Go 语言开发环境
linux·ubuntu·golang·gvm
人工智能训练师12 小时前
openEuler系统中如何将docker安装在指定目录
linux·运维·服务器·人工智能·ubuntu
yuanpan1 天前
ubuntu系统上的conda虚拟环境导出方便下次安装
linux·ubuntu·conda
shelutai1 天前
ubuntu 编译ffmpeg6.1 增加drawtext,libx264,libx265等
linux·ubuntu·ffmpeg
Linux运维技术栈2 天前
多系统 Node.js 环境自动化部署脚本:从 Ubuntu 到 CentOS,再到版本自由定制
linux·ubuntu·centos·node.js·自动化
bianshaopeng2 天前
ubuntu go 环境变量配置
开发语言·ubuntu·golang
Fireworkitte2 天前
Ubuntu、CentOS、AlmaLinux 9.5的 rc.local实现 开机启动
linux·ubuntu·centos
sword devil9002 天前
ubuntu常见问题汇总
linux·ubuntu
我是哈哈hh3 天前
【MySQL】在UBuntu环境安装以及免密码登录入门
linux·数据库·mysql·ubuntu
clever1014 天前
在ubuntu系统上离线安装jenkins的做法
ubuntu·servlet·jenkins