libgtk-3-0依存関係の問題


12

Ubuntuボックスの標準パッケージを更新しようとしています。このボックスには、私が実行するいくつかのWindows向けのVirtualBoxを除いて、文字通り余分なものはありません。出力は次のとおりです。

$ sudo apt-get update
[...]
$ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
 libgail-3-0 : Depends: libgtk-3-0 (= 3.6.0-0ubuntu3.2) but 3.6.0-0ubuntu3.1 is installed
 libgtk-3-0 : Depends: libgtk-3-common (= 3.6.0-0ubuntu3.1) but 3.6.0-0ubuntu3.2 is installed
 libgtk-3-bin : Depends: libgtk-3-0 (>= 3.6.0-0ubuntu3.2) but 3.6.0-0ubuntu3.1 is installed

-fオプションを使用した別の方法:

$ sudo apt-get -f upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following packages will be upgraded:
  libgtk-3-0 overlay-scrollbar-gtk3
2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
26 not fully installed or removed.
Need to get 0 B/2,397 kB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]? y
(Reading database ... 203437 files and directories currently installed.)
Preparing to replace libgtk-3-0:amd64 3.6.0-0ubuntu3.1 (using .../libgtk-3-0_3.6.0-0ubuntu3.2_amd64.deb) ...
Unpacking replacement libgtk-3-0:amd64 ...
dpkg: error processing /var/cache/apt/archives/libgtk-3-0_3.6.0-0ubuntu3.2_amd64.deb (--unpack):
 trying to overwrite '/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules', which is also in package ibus-gtk3:amd64 1.4.1-7ubuntu1
Preparing to replace overlay-scrollbar-gtk3:amd64 0.2.16+r357-0ubuntu1 (using .../overlay-scrollbar-gtk3_0.2.16+r357-0ubuntu1.1_amd64.deb) ...
Unpacking replacement overlay-scrollbar-gtk3:amd64 ...
dpkg: error processing /var/cache/apt/archives/overlay-scrollbar-gtk3_0.2.16+r357-0ubuntu1.1_amd64.deb (--unpack):
 trying to overwrite '/usr/lib/x86_64-linux-gnu/gtk-3.0/modules', which is also in package libcanberra-gtk3-module:amd64 0.29-0ubuntu2
Errors were encountered while processing:
 /var/cache/apt/archives/libgtk-3-0_3.6.0-0ubuntu3.2_amd64.deb
 /var/cache/apt/archives/overlay-scrollbar-gtk3_0.2.16+r357-0ubuntu1.1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

apt-cache policy関係するすべてのパッケージの出力は、pastebin d3YcjPmJです。すべては公式quantalおよびquantal-updatesリリースチャンネルと公式ミラーからのもののようです。

私も試してみたsudo apt-get -f installsudo apt-get dist-upgradeそしてsudo apt-get clean && sudo rm -r /var/cache/apt/archives/、同じエラーにすべてのリード。


はい、新しいパッケージで更新を行いました。はい、アップグレード前に更新を実行しました
Logan Best

これらのコマンドは両方とも、元のリクエストの-f出力と同じ出力を取得しました。
ローガンベスト

1
/var/cache/apt/archives/ディレクトリを削除して再度更新しようとしましたか?sudo apt-get clean && sudo rm -r /var/cache/apt/archives/
ルシオ

試行し、同じエラー。質問を更新しました。
ローガンベスト

@LoganBestどうぞ、これで試してみてください:sudo dpkg -r libgtk-3-0_3.6.0-0ubuntu3.2_amd64.deb && sudo dpkg -r overlay-scrollbar-gtk3_0.2.16+r357-0ubuntu1.1_amd64.debそしてsudo apt-get -f install && sudo apt-get update && sudo apt-get upgrade
ルシオ

回答:


3

この問題が引き続き発生する場合は、ピアのバージョンが同じでないと一部のパッケージが機能しないためです。

libgail-3-0 : Depends: libgtk-3-0 (= 3.6.0-0ubuntu3.2) but 3.6.0-0ubuntu3.1 is installed
libgtk-3-0 : Depends: libgtk-3-common (= 3.6.0-0ubuntu3.1) but 3.6.0-0ubuntu3.2 is installed
libgtk-3-bin : Depends: libgtk-3-0 (>= 3.6.0-0ubuntu3.2) but 3.6.0-0ubuntu3.1 is installed

ご覧のとおり、libgail-3-0ではlibgtk-3-0を3.6.0-0ubuntu3にする必要があります。2ですが、libgtk-3-0ではlibgtk-3-commonが3.6.0-0ubuntu3である必要があります。1 .1バージョンの違い。そのため、libgtk-familyには異なるバージョンを使用できないため、apt-getには予期しない依存関係エラーが発生します。それでこれを解決する方法は?holdパッケージステータスを使用します。

echo "libgtk-3-bin hold" | sudo dpkg --set-selections
echo "libgtk-3-0 hold" | sudo dpkg --set-selections

これにより、Ubuntuリポジトリで依存関係の競合が解決されるまで、正常にアップグレードできます。

アップグレードを許可できると感じたら、次を実行します。

echo "libgtk-3-bin install" | sudo dpkg --set-selections
echo "libgtk-3-0 install" | sudo dpkg --set-selections

別のオプションは、バージョンを強制的にインストールすることです。

sudo apt-get update
sudo apt-get install libgtk-3-0=3.6.0-0ubuntu3.1 libgtk-3-common=3.6.0-0ubuntu3.1 libgtk-3-0=3.6.0-0ubuntu3.1

これにより、同じバージョン番号を使用してすべてをインストールするようapt-getに指示します。


0

まだこれらの問題を抱えている人のために。

いくつかのパッケージを手動で削除したときに表示されると思いますが、残されたすべてのゴミをきれいにしないでください。私の場合、私はlibgtkまだインストールしていましたが、それは私がインストールしたかった新しいバージョンでした。そのため、ライブラリのさまざまなバージョンで何をすべきかを本当に知りませんでした。

libgtk-3-0同様の問題のあるパッケージやその他のパッケージを削除しただけで、すべてが順調に進みました。

PS。このパッケージを削除できるようにするためにecho "libgtk-3-0 hold" | sudo dpkg --set-selectionsecho "libgtk-3-0 install" | sudo dpkg --set-selections、やら なければならないことに注意してください 。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.