Le système de paquet est cassé. Comment le réparer?

42

Je viens d’acheter un arduino et exige que gcc-avr / avrdude compile le logiciel. J'ai installé avr pour un autre composant de microprocesseur il y a quelque temps, mais c'est évidemment une version obsolète (version gcc 3.3 20030512 (version préliminaire)).

(Veuillez noter qu’avant, j’ai aussi cassé mon aptdaemon via une installation de vin incomplète (impossible d’obtenir un accord d’installation de police), mais je l’ai corrigé via une réinstallation puis acceptation du contrat.)

J'essaie de les mettre à jour en exécutant le script de génération du bingo . mais les dépendances dont il a besoin ne peuvent pas être installées à cause des rapports de terminal d'Apr ...

Reading package lists... Done
Building dependency tree       
Reading state information... Done
build-essential is already the newest version.
libncurses5-dev is already the newest version.
libncurses5-dev set to manually installed.
libusb-0.1-4 is already the newest version.
libx11-dev is already the newest version.
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
arduino-core : Depends: gcc-avr but it is not going to be installed
avr-libc : Depends: gcc-avr (>= 1:4.3.4) but it is not going to be installed
Depends: binutils-avr (>= 2.20) but it is not going to be installed
binutils-dev : Depends: binutils (= 2.21.0.20110327-2ubuntu3) but 2.21.0.20110327-2ubuntu2 is to be installed
libcwidget-dev : Depends: libcwidget3 (= 0.5.16-3ubuntu2) but it is not going to be installed
Depends: libsigc++-2.0-dev but it is not going to be installed
Depends: libncursesw5-dev but it is not going to be installed
libmpfr-dev : Depends: libgmp3-dev (>= 4.2.dfsg-1) but it is not going to be installed
python-dev : Depends: python (= 2.7.1-0ubuntu5.1) but 2.7.1-0ubuntu5 is to be installed
Depends: python2.7-dev (>= 2.7.1-1~) but it is not going to be installed
tk8.4-dev : Depends: tk8.4 (= 8.4.19-4) but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

Mais en cours d'exécution

apt-get -f install

donne

(Reading database ... 163021 files and directories currently installed.)
Unpacking binutils-avr (from .../binutils-avr_2.20.1-1ubuntu2_i386.deb) ...
dpkg: error processing /var/cache/apt/archives/binutils-avr_2.20.1-1ubuntu2_i386.deb (--unpack):
trying to overwrite '/usr/bin/avr-size', which is also in package avr-binutils 2.13.90.030512-2
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Unpacking gcc-avr (from .../gcc-avr_1%3a4.3.5-1_i386.deb) ...
dpkg: error processing /var/cache/apt/archives/gcc-avr_1%3a4.3.5-1_i386.deb (--unpack):
trying to overwrite '/usr/bin/avr-g++', which is also in package avr-gcc-c++ 3.2.90.20030512-2
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/binutils-avr_2.20.1-1ubuntu2_i386.deb
/var/cache/apt/archives/gcc-avr_1%3a4.3.5-1_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

J'ai essayé de lancer le gestionnaire de mise à jour et de mettre à jour mon système via celui-ci mais tout ce que je reçois est un message d'erreur

The following packages have unmet dependencies:
arduino-core: Depends: gcc-avr but it is not installed
avr-libc: Depends: gcc-avr (>= 1:4.3.4) but it is not installed
Depends: binutils-avr (>= 2.20) but it is not installed

qui me dit alors d'essayer de lancer apt-get -f install qui ne donne que le même résultat que la dernière fois.

Alors, comment puis-je réparer mon système, j'ai vraiment besoin du nouveau avr, s'il vous plaît :) BTW, mon système est Ubuntu 11.04

    
posée Vigi 04.04.2012 - 03:41
la source

6 réponses

27

Après avoir reçu cette erreur, essayez sudo apt-get -f install pour forcer une installation des fichiers qui n'ont pas été chargés à cause de l'erreur.

Ensuite, essayez à nouveau sudo apt-get update , sudo apt-get -f install d'avant en arrière jusqu'à ce qu'il ne reste plus que le paquet contenant l'erreur.

sudo dpkg --configure -a

et nettoyez le cache

sudo apt-get clean

    
réponse donnée Ringtail 04.04.2012 - 04:41
la source
17

Cela se produit généralement à la suite de «dépendances non satisfaites pour les packages installés».

Voici une solution simple si vous avez installé 'Synaptic':

  • Ouvrez Synaptic.
  • Aller à 'Statut' (dans la navigation de gauche).
  • Choisissez "Broken".
  • Supprimez ces paquets cassés.

Sinon, il peut être traité via CLI:

Ouvrez le terminal et exécutez cette commande:

sudo apt-get clean

La commande ci-dessus nettoie le référentiel local du fichier de package récupéré.

sudo apt-get install -f

Corrigera les dépendances brisées, c’est-à-dire que -f signifie ici "fix broken".

sudo dpkg --configure -a

va configurer tous les paquets ( -a ) qui n'ont pas encore été configurés. À la fin, exécutez la commande de mise à jour sudo apt-get update .

    
réponse donnée Nabeel Ahmed 21.04.2013 - 16:22
la source
14

Ouvrez synaptic . Ensuite, accédez à l'état et choisissez Brisé . Supprimez ensuite complètement les paquets cassés.

Cela devrait corriger votre système.

    
réponse donnée user61928 03.10.2012 - 12:34
la source
3

Essayez: sudo apt-get update && sudo apt-get -f install
J'espère que cela résoudra le problème.

    
réponse donnée Frantique 03.10.2012 - 12:09
la source
1

Si vous ne l'êtes pas déjà, essayez de remplacer la référence de votre référentiel de packages par "Main" ou les États-Unis . Faire cela a résolu mon problème de dépendances de Python-dev non satisfait (mon installation 12.04 utilisait le référentiel de paquets du Royaume-Uni, précédemment).

  1. Dans 'Ubuntu Software Center' (USC), accédez au menu / onglet 'Edit = & gt; Sources de logiciels '.
  2. Modifiez la valeur déroulante "Télécharger à partir de" en "Serveur principal" ou un serveur aux États-Unis.
  3. Laissez USC, ouvrez le "Gestionnaire de mises à jour" depuis le menu du programme Ubuntu, et "Vérifier" pour la mise à jour logicielle (ou lancez "sudo apt-get update" dans une fenêtre de terminal).
  4. Mettez à jour votre logiciel comme vous le feriez normalement, par exemple via 'Update Manager' ou apt-get / aptitude dans un terminal.

Cela a réparé mon référentiel et j'ai continué à installer tout ce dont j'avais besoin après coup, comme d'habitude.

Avant de corriger mon problème avec les instructions ci-dessus, diverses commandes aptitude / apt-get ont suggéré de supprimer de nombreux paquets, mais, comme vous pouvez le constater, je n’ai pas eu envie de perdre mes 6 mois d’ajouts de paquets. c'est quand même que je claque la liste des paquets parfois (voir mon l'essentiel pour des conseils)! Je suis vraiment content d'avoir appris les instructions que je vais laisser ici.

J'espère que ça aide.

    
réponse donnée Big Rich 12.04.2013 - 00:38
la source
0

eu le même problème, un

sudo apt-get clean

suivi d'un

sudo apt-get update

suivi d'un

sudo apt-get upgrade -f

corrigé J'espère que ça aide!

    
réponse donnée user152730 28.04.2013 - 02:40
la source

Lire d'autres questions sur les étiquettes