J'ai essayé de mettre à jour les packages standard sur ma boîte Ubuntu. Il n'y a littéralement rien de plus sur cette boîte, à l'exception de VirtualBox pour certains trucs Windows que j'exécute. Voici une sortie :
$ 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
Et un autre avec l'option -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)
Voici la sortie pour apt-cache policy
pour tous les packages concernés :pastebin d3YcjPmJ. Tous semblent provenir du quantal
officiel et quantal-updates
canal de diffusion et un miroir officiel.
J'ai aussi essayé sudo apt-get -f install
, sudo apt-get dist-upgrade
et sudo apt-get clean && sudo rm -r /var/cache/apt/archives/
, mais tous conduisent à la même erreur.
Réponse acceptée :
Ok, si vous rencontrez toujours ce problème, cela se produit parce que certains packages ne fonctionneront pas si les versions de leurs homologues ne sont pas les mêmes.
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
Comme vous pouvez le voir, libgail-3-0 nécessite que libgtk-3-0 soit 3.6.0-0ubuntu3.2 mais libgtk-3-0 nécessite que libgtk-3-common soit 3.6.0-0ubuntu3.1 une différence de .1 versions. Ainsi, puisque libgtk-family ne peut pas être de versions différentes, apt-get obtient une erreur de dépendance attendue. Alors, comment résoudre ce problème ? Nous utilisons le hold
état du colis :
echo "libgtk-3-bin hold" | sudo dpkg --set-selections
echo "libgtk-3-0 hold" | sudo dpkg --set-selections
Avec cela, vous pouvez mettre à niveau normalement jusqu'à ce que les conflits de dépendance soient résolus dans les référentiels Ubuntu.
En relation:Problème avec swap dans Ubuntu 18.04 ?Une fois que vous sentez que vous pouvez autoriser les mises à niveau, exécutez simplement :
echo "libgtk-3-bin install" | sudo dpkg --set-selections
echo "libgtk-3-0 install" | sudo dpkg --set-selections
Une autre option consiste à forcer l'installation des versions :
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
Cela indiquera à apt-get de tout installer en utilisant le même numéro de version.