web-dev-qa-db-fra.com

Dépendances non résolues incapables de réparer

Je cours Ubuntu 14.04. Je ne peux pas utiliser de centre logiciel pour installer quoi que ce soit, même un paquet deb local, je dois donc faire confiance à Terminal.

Récemment, j'essayais d'installer mysql-server qui générait une erreur que je pouvais identifier. Il s'agissait de la version requise de libstdc ++ 6. Mon système avait 4.8.x alors que mysql 5.6 était requis> = 4.9. En essayant le processus de mise à niveau habituel et en échec, j'ai consulté mon administrateur système, qui a essayé d'installer le paquet 4.9 manuellement (en utilisant un paquet .deb local), ce qui a également échoué en citant des dépendances non satisfaites.

À l'heure actuelle, ce que j'ai est un système avec une erreur en disant qu'aucun nouveau logiciel ne peut être installé.

Le Sudo apt-get install -f donne le résultat suivant:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... failed.
The following packages have unmet dependencies:
 libstdc++6 : Depends: gcc-4.9-base (= 4.9.2-10) but 4.9.1-0ubuntu1 is installed
 libstdc++6:i386 : Depends: gcc-4.9-base:i386 (= 4.9.2-10) but 4.9.1-0ubuntu1 is installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

J'ai vérifié les colis retenus en utilisant

dpkg -l | grep ^h
dpkg -l | grep hold

Résultat: rien.

Également essayé de trouver le paquetage cassé, s'il en existe un autre que le fichier /var/log/dist-upgrade/apt.log n'existe pas.

Alors, que dois-je/puis-je faire maintenant?.

7
neo.one

Votre problème de dépendances non résolues est dû au référentiel de référentiels MySQL APT. MySQL Server 5.6 à partir de MySQL APT Le référentiel nécessite libstdc ++ 6> = 4.9 mais MySQL Server 5.6 (mysql-server-5.6) à partir des référentiels Ubuntu par défaut nécessite libstdc ++ 6 > = 4.6. Lorsque vous installez la version de MySQL Server 5.6 (mysql-server-5.6) à partir des référentiels Ubuntu par défaut, toutes les dépendances du paquet sont automatiquement résolues.

Pour résoudre le problème, vous devez supprimer le référentiel MySQL APT, puis désinstaller tous les packages que vous avez installés à partir du référentiel MySQL APT.

Pour supprimer le référentiel MySQL APT, utilisez une commande de la forme suivante:

Sudo dpkg --remove package-name

où vous remplacez nom-paquet par le nom du paquet MySQL APT Référentiel que vous avez précédemment installé. Sinon, vous pouvez également rechercher dans le Centre de logiciel Ubuntu le package MySQL APT Repository .deb que vous avez installé et le supprimer de celui-ci.

Ensuite, installez MySQL Server 5.6 avec la commande:

Sudo apt install mysql-server-5.6
2
karel

Utilisez "aptitude" pour résoudre le problème.

Sudo apt-get install aptitude
Sudo aptitude remove mysql-apt-config

Suivez maintenant les solutions proposées.

1
A.B.

libstdc ++ 6: Dépend de: gcc-4.9-base (= 4.9.2-10) mais 4.9.1-0ubuntu1 est installé

Le paquet gcc-4.9-base (= 4.9.2-10) est uniquement disponible pour Ubuntu Vivid.

Vérifiez this (utopic) et this (vivid) .

Supprimez le paquet mysql-apt-config installé par ces instructions et utilisez mysql-server pour obtenir la dernière version.

Sudo dpkg --force-all -P mysql-apt-config
Sudo apt-get install mysql-server
0
A.B.

Cette erreur se produit car le paquet que vous essayez de télécharger et d'installer nécessite libstdc ++ 6> = 4.9. La dernière version de libstdc ++ 6 disponible sur les référentiels Ubuntu 14.04 LTS est 4.8.2-19ubuntu1, une version antérieure à 4.9.

Je suppose que vous utilisez Ubuntu 14.04, car le paquet libstdc ++ 6 sur votre ordinateur est bloqué à 4.8.2-19ubuntu1. Le référentiel MySQL APT contient actuellement des packages pour trois versions d'Ubuntu: 12.04, 14.04 et 14.10. Les packages pour 12.04 et 14.04 ne nécessitent que libstdc ++ 6> = 4.6, tandis que 14.10 requiert la version libstdc ++ 6> = 4.9.

Vérifiez que vous avez bien installé le paquet mysql-apt-config approprié à votre version d'Ubuntu.

0
zhongfu