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


13

在这种情况下,我libgbm1被关押了,给我以下信息:

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

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

sudo apt-get upgrade不会升级此软件包("...and 1 not upgraded.")。我需要这个来构建其他依赖于它的软件包(pkgProblemResover再次出现问题)。看来我无法还原版本,也无法前进。

我尝试过的步骤:

  • 禁止在一些PPA库software updatessudo apt-get update然后试图用容易解决,没有工作。
  • sudo apt-get -f installand 1 not upgraded
  • 尝试安装libgbm1依赖的软件包。但是出现了更多的软件包,很快就堆积了数十个,这似乎不可靠,并且它们也报告了类似的错误。

为什么我不能取出包装?如何解决?

Answers:


23

这里的问题是锁定麻烦制造者软件包并将其踢出。然后,您可以使用修复不一致的依赖性sudo apt-get -f install

因此,请谨慎使用:sudo dpkg --force-all -P libgbm1强制去除损坏的部分。此命令可能会损坏您的系统,因此您应该注意它。并尝试修复:sudo apt-get -f install

如果任何软件包也损坏,请谨慎重复上述步骤。并且每次您删除损坏的软件包时,请尝试对其进行修复。在这种情况下,我解决了我的问题。


谢谢,两天的痛苦才找到答案!不过,我要完成你的答案,因为我不得不跑sudo apt --fix-broken installsudo dpkg --force-all -P libgbm1完成安装
杰里米Pouyet

4

不要急于使用--force-all选项删除损坏的软件包dpkg,首先尝试使用不带此选项的选项将其删除

dpkg -P package-name

以我为例,dpkg打印了为什么无法删除此软件包的原因:另一个软件包依赖于此。在我删除受抚养人之后,破损的包裹最终可以被删除,没有任何东西--force-anything

如果受抚养人也被破坏,这可能需要多次递归移除,但最终结果应该是apt通过移除来修复无法修复的依赖项链。


1
这是我能找到的唯一可以帮助解决我的问题的解决方案,由于依赖关系未得到满足而无法安装
wlh
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.