未满足的依赖项无法修复

未满足的依赖项无法修复

我正在运行 ubuntu 14.04。我无法使用软件中心安装任何东西,甚至是本地 deb 包,所以我必须依赖终端。

最近我尝试安装时mysql-server出现了错误,我可以确定是 libstdc++6 所需的版本。我的系统有 4.8.x,而 mysql 5.6 需要 >=4.9。尝试常规升级过程但没有成功,我咨询了系统管理员,他尝试手动安装 4.9 包(使用本地 .deb 包),但也失败了,原因是依赖项未满足。

目前,我的系统出现错误,提示无法安装新软件。

给出sudo apt-get install -f以下输出:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... failed.
The following packages have unmet dependencies:
 libstdc++6 : Depends: gcc-4.9-base (= 4.9.2-10) but 4.9.1-0ubuntu1 is installed
 libstdc++6:i386 : Depends: gcc-4.9-base:i386 (= 4.9.2-10) but 4.9.1-0ubuntu1 is installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

我使用以下方式检查了持有的包裹

dpkg -l | grep ^h
dpkg -l | grep hold

结果:没有结果。

还尝试查找损坏的包(如果有),但文件 /var/log/dist-upgrade/apt.log不存在。

那么,我现在应该/可以做什么?

答案1

未满足的依赖关系问题是由 MySQL APT Repository 存储库引起的。MySQL APT Repository 中的 MySQL Server 5.6 需要 libstdc++6 >=4.9,但是 MySQL Server 5.6 (mysql-服务器-5.6) 需要 libstdc++6 >=4.6。当您安装 MySQL Server 5.6 版本时 (mysql-服务器-5.6) 从默认的 Ubuntu 存储库中,它会自动为您解析所有软件包依赖关系。

要解决该问题,您需要删除 MySQL APT 存储库,然后卸载从 MySQL APT 存储库安装的所有软件包。

要删除 MySQL APT 存储库,请使用以下命令:

sudo dpkg --remove package-name

你替换的地方包裹名字使用您之前安装的 MySQL APT 存储库的包名称。或者您也可以在 Ubuntu 软件中心搜索您安装的 MySQL APT 存储库 .deb 包,然后从那里将其删除。

然后使用以下命令安装 MySQL Server 5.6:

sudo apt install mysql-server-5.6

答案2

使用“aptitude”来解决问题。

sudo apt-get install aptitude
sudo aptitude remove mysql-apt-config

现在遵循所提出的解决方案。

答案3

出现此错误的原因是您尝试下载并安装的软件包需要 libstdc++6 >=4.9。Ubuntu 14.04 LTS 存储库中提供的 libstdc++6 的最新版本是 4.8.2-19ubuntu1,比 4.9 旧。

我假设您正在运行 Ubuntu 14.04,因为计算机上的 libstdc++6 软件包停留在 4.8.2-19ubuntu1。MySQL APT 存储库目前有三个版本的 Ubuntu 软件包:12.04、14.04 和 14.10。12.04 和 14.04 的软件包都只需要 libstdc++6 >=4.6,而 14.10 需要版本 libstdc++6 >=4.9。

请检查您是否已为您的 Ubuntu 版本安装了正确的 mysql-apt-config 包。

答案4

libstdc++6:依赖:gcc-4.9-base(= 4.9.2-10)但已安装 4.9.1-0ubuntu1

包裹gcc-4.9-base(= 4.9.2-10)仅适用于 Ubuntu Vivid。

查看这(乌托邦)这(生动)

删除mysql-apt-config由以下程序包安装的这些说明并使用mysql-server以获取最新版本。

sudo dpkg --force-all -P mysql-apt-config
sudo apt-get install mysql-server

相关内容