未满足的依赖项 – 无法删除包libgbm1
在这种情况下,我有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
问题)。 看来我无法恢复版本也无法继续前进。
我尝试过的步骤:
- 禁用
software updates
一些ppa存储库和sudo apt-get update
然后尝试使用apt修复,这不起作用。 -
sudo apt-get -f install
withand 1 not upgraded
。 - 试图安装
libgbm1
依赖的软件包。 但是更多的软件包正在向前发展并迅速堆积到数十个软件包中,这似乎是不可靠的,并且它们也报告了类似的错误。
为什么我不能删除包裹? 怎么解决?
这里的问题是锁定故障排除程序包并将其踢出。 然后,您可以使用sudo apt-get -f install
修复不一致的依赖项。
因此,谨慎使用: sudo dpkg --force-all -P libgbm1
强制删除损坏的。 此命令可能会损坏您的系统,因此您应该观看它。 并尝试修复: sudo apt-get -f install
。
如果任何包装也有腐败,请小心重复上述步骤。 每次删除损坏的包时,请尝试修复它们。 在这种情况下我解决了我的问题。
而不是急于删除破损的软件包--force-all
选项,首先尝试在没有此选项的情况下删除它,只需使用
dpkg -P package-name
在我的情况下, dpkg
打印为什么它无法删除此包:另一个包取决于它。 在我删除了dependee之后,最终可以删除损坏的包,没有任何--force-anything
。
如果依赖者也被破坏,这可能需要几次递归删除,但最终结果应该是通过删除来修复apt
无法修复的依赖链。