下列软件包有未满足的依赖关系: cmake-qt-gui : 依赖: cmake (= 3.10.2-1ubuntu2) E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依

问题描述

在安装cmake-qt-gui时,出现了软件包依赖问题:

正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到(Incoming)目录移出。
下列信息可能会对解决问题有所帮助:

下列软件包有未满足的依赖关系:
 cmake-qt-gui : 依赖: cmake (= 3.10.2-1ubuntu2)
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。

然后在终端安装上面需要的 cmake = 3.10.2-1ubuntu2依赖时,又出现问题:
下列软件包有未满足的依赖关系: cmake-qt-gui : 依赖: cmake (= 3.10.2-1ubuntu2) E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依_第1张图片

解决方案

其实这类问题解决起来和递归的思想相同,自顶向下找到缺少的依赖关系,到达最底层时就可以安装好所缺依赖,这时候就一直返回上面的每层进行安装,最终解决问题。

1、可以看到上面说缺少cmake-data(= 3.10.2-1ubuntu2),所以我们在终端输入:

sudo apt install cmake-data= 3.10.2-1ubuntu2

回车,发现安装成功:
在这里插入图片描述
下列软件包有未满足的依赖关系: cmake-qt-gui : 依赖: cmake (= 3.10.2-1ubuntu2) E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依_第2张图片
2、这时候我们再输入sudo apt install cmake-3.10.2-1ubuntu2,回车,安装成功。
下列软件包有未满足的依赖关系: cmake-qt-gui : 依赖: cmake (= 3.10.2-1ubuntu2) E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依_第3张图片
3、最后,我们再输入sudo apt install cmake-qt-gui,回车,安装成功!

你可能感兴趣的:(Ubuntu,ubuntu,linux,cmake,sudo,ros)