libgtk-3-0 bağımlılık sorunları


12

Ubuntu kutumdaki standart paketleri güncellemeye çalışıyorum. Bu kutuda, çalıştırdığım bazı Windows şeyleri için VirtualBox dışında ekstra bir şey yok. İşte bir çıktı:

$ 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 seçeneğine sahip bir başkası:

$ 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İlgili tüm paketler için çıktı : pastebin d3YcjPmJ . Hepsi resmi quantalve quantal-updatesyayın kanalından ve resmi bir aynadan geliyor gibi görünüyor .

Ben de denedim sudo apt-get -f install, sudo apt-get dist-upgradeve sudo apt-get clean && sudo rm -r /var/cache/apt/archives/fakat aynı hataya yol açarlar.


Evet, yeni paketlerle güncellemeyi yaptım ve evet Güncellemeden önce güncellemeyi çalıştırdım
Logan Best

Bu komutların her ikisi de, özgün istekte -f çıktısıyla aynı çıktıya sahiptir.
Logan Best

1
/var/cache/apt/archives/Dizini silmeyi ve tekrar güncellemeyi denediniz mi? sudo apt-get clean && sudo rm -r /var/cache/apt/archives/
Lucio

Denendi ve aynı hata. Güncel soru.
Logan Best

@LoganBest Lütfen, şunu deneyin: 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.debve sonrasudo apt-get -f install && sudo apt-get update && sudo apt-get upgrade
Lucio

Yanıtlar:


3

Tamam, bu sorunu hala yaşıyorsanız, akranlarının sürümleri aynı değilse bazı paketler çalışmaz.

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

Gördüğünüz gibi libgail-3-0, libgtk-3-0'un 3.6.0-0ubuntu3 olmasını gerektirir. 2 fakat libgtk-3-0 3.6.0-0ubuntu3 olmak libgtk-3-common gerektirir. 1 .1 versiyonlarının farklılığı. Bu nedenle, libgtk-ailesi farklı sürümlere sahip olamadığından, apt-get beklentisel bir bağımlılık hatası alır. Peki bunu nasıl çözebilirim? Biz kullanmak holdkargo durumu:

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

Bununla, Ubuntu depolarında bağımlılık çakışmaları çözülene kadar normal şekilde yükseltebilirsiniz.

Yükseltmelere izin verebileceğinizi düşünüyorsanız, şunu çalıştırın:

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

Başka bir seçenek de sürümleri yüklenmeye zorlamaktır:

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

Bu, apt-get'in her şeyi aynı sürüm numarasını kullanarak yüklemesini söyleyecektir.


0

Hala bu sorunları olan herkes için.

Bazı paketleri manuel olarak sildiğinizde ancak geride bıraktıkları tüm çöpleri temizlemediğinizde inanıyorum. Benim durumumda libgtkhala yükledim ve daha yeni bir sürümdü, sonra yüklemek istedim. Bu yüzden kütüphanenin farklı versiyonlarıyla ne yapacağını gerçekten bilmiyordu.

Sadece libgtk-3-0ve benzer sorunları olan diğer paketleri sildikten sonra her şey yolunda gitti.

PS. Bunu yaptıysanız, bu paketi silebilmek echo "libgtk-3-0 hold" | sudo dpkg --set-selections için yapmanız echo "libgtk-3-0 install" | sudo dpkg --set-selectionsgerekir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.