未满足的依赖项-无法删除软件包 libgbm1

未满足的依赖项-无法删除软件包 libgbm1

在这种情况下,我被libgbm1扣留了,并给我发送了如下消息:

Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

由于我仔细阅读添加 PPA 后如何解决未满足的依赖关系?我尝试按照建议删除损坏的软件包sudo apt-get remove libgbm1。但是,remove 命令给出了相同的错误。

sudo apt-get upgrade不升级此软件包("...and 1 not upgraded.")。我需要这个软件包来构建一些依赖于它的其他软件包(pkgProblemResover问题又出现了)。看来我无法恢复版本或继续前进。

我曾经尝试过的步骤:

  • 禁用一些 ppa 存储库,software updates然后sudo apt-get update尝试使用 apt 修复,但没有效果。
  • sudo apt-get -f installand 1 not upgraded
  • 尝试安装libgbm1依赖的软件包。但是越来越多的软件包出现,很快就堆积到几十个,这似乎不太可靠,而且它们也报告了类似的错误。

为什么我无法删除该软件包?该如何修复?

答案1

这里的问题是锁定制造麻烦的包并将其踢出。然后你可以使用以下命令修复不一致的依赖关系sudo apt-get -f install

因此,请谨慎使用:sudo dpkg --force-all -P libgbm1强制删除损坏的程序。此命令可能会损坏您的系统,因此您应该小心。并尝试修复:sudo apt-get -f install

如果任何软件包也损坏了,请小心地重复上述步骤。每次删除损坏的软件包时,请尝试修复它们。在这种情况下,我解决了我的问题。

答案2

不要急着使用 选项删除损坏的软件包--force-alldpkg先尝试不使用此选项删除它,只需使用

dpkg -P package-name

在我的例子中,dpkg打印了为什么无法删除此软件包:另一个软件包依赖于它。在我删除依赖项后,损坏的软件包终于可以被删除,没有任何--force-anything.

如果依赖项也损坏,则可能需要进行几次递归删除,但最终结果应该是apt通过删除来修复无法修复的依赖链。

答案3

使用 DPKG 强制重新配置或删除损坏的软件包

使用以下命令重新配置基本包管理系统 DPKG:

sudo dpkg --configure -a

检查 DPKG 是否将某些包标记为需要重新安装。

sudo dpkg -l | grep ^..R

如果上述命令返回一个或多个包的列表,请尝试通过键入以下内容删除这些包:

sudo dpkg --purge --force-all libgbm1

完成故障排除后,运行以下命令清理系统:

sudo apt clean

然后更新存储库:

sudo apt update

然后升级存储库:

sudo apt upgrade

希望能帮助到你。

相关内容