この場合、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
の問題)。バージョンを元に戻すことも、先に進むこともできないようです。
私が今まで試した手順:
software updates
およびSudo apt-get update
の一部のPPAリポジトリを無効にしてから、aptで修正しようとしましたが、動作しませんでした。Sudo apt-get -f install
とand 1 not upgraded
。libgbm1
が依存するパッケージをインストールしようとしました。しかし、今後さらに多くのパッケージが数十個に達するとすぐに山積みになります。これは処理の信頼性が低く、同様のエラーも報告されています。パッケージを削除できなかったのはなぜですか?修正方法
ここでの問題は、トラブルメーカーパッケージをロックダウンして、追い出すことです。その後、Sudo apt-get -f install
を使用して、矛盾した依存関係を修正できます。
したがって、慎重に使用すると、Sudo dpkg --force-all -P libgbm1
を使用して、破損したものを強制的に削除できます。このコマンドはシステムに損傷を与える可能性があるため、監視する必要があります。修正してみてください:Sudo apt-get -f install
。
パッケージも破損している場合は、上記の手順を慎重に繰り返します。そして、壊れたパッケージを削除するたびに、それらを修正してください。この場合、問題に取り組みました。
壊れたパッケージを削除するためにdpkg
の--force-all
オプションを急ぐ代わりに、まずこのオプションなしで、単純に
dpkg -P package-name
私の場合、dpkg
は、このパッケージを削除できなかった理由を出力しました。別のパッケージがそれに依存していました。依存先を削除した後、壊れたパッケージは--force-anything
なしで最終的に削除できます。
これにより、依存先も壊れた場合にいくつかの再帰的な削除が必要になる場合がありますが、最終結果は、依存関係チェーンを修正する必要があり、apt
は削除によって修正できませんでした。