问题描述

        今天在安装项目SDK的时候需要提前安装一些需要的包,但是在安装的时候报以下的错误:                g++ : 依赖: gcc (>= 4:7.3.0-3ubuntu2) 但是它将不会被安装

        下列软件包有未满足的依赖关系: xx : 依赖: xx(>= 7.3.0) 但是它不会被安装

 问题解决

        这个问题字面意思就是我们需要的包不能直接安装,要先安装它的依赖包才能进一步安装它,会报这个错误是因为:

        Ubuntu 自生安装的软件包版本高,而所安装软件的依赖包版本低的原因

        说白了,就是两者的版本对不上,不能自动下载,解决办法很简单,安装 aptitude,用 aptitude 来安装你要安装的包


        这是因为 aptitude 这个东西很厉害,它和 apt 一样都是安装包的,但是它能根据包之间的依赖关系来安装,当然也能用来删除包,它在删除一个包的时候会把该包的依赖包也全部删除,让你的系统变得更干净。安装这个包只需要下述一行命令即可

sudo apt-get install aptitude --fix-missing

安装了 aptitude 之后,之前因为依赖关系而安装不上的包,都用 aptitude 安装即可,如下所示

sudo aptitude install g++

如下图所示,aptitude 会自动帮你下载适配的依赖包,但是,千万要注意

它在第一次询问的时候,记得先输入n,不采用保持当前版本,第二次和第三次询问再输入y或者直接回车确定默认的y,也就是yes,就是采用降级来安装各自的依赖包

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐