El sistema de paquetes está roto. ¿Como arreglarlo?

50

Recientemente compré un arduino y necesito gcc-avr / avrdude para compilar el software. Instalé avr para otro componente de microprocesador hace un tiempo, pero obviamente es una versión desactualizada (gcc versión 3.3 20030512 (prelanzamiento)), así que seguí actualizando pero no funcionó.

(Tenga en cuenta que de antemano también rompí mi aptdaemon a través de una instalación incompleta de wine (no se pudo aprobar el acuerdo de instalación de fuentes) pero lo arreglé a través de una reinstalación y luego acepté el acuerdo).

Estoy tratando de actualizarlos ejecutando el script de compilación del bingo, pero las dependencias que requiere no se pueden instalar debido a avr ... informes de terminal

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).

Pero corriendo

apt-get -f install

resultados en

(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)

He intentado ejecutar el administrador de actualizaciones y actualizar mi sistema a través de él, pero todo lo que obtengo es un mensaje de error

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

que luego me dice que intente ejecutar apt-get -f install, lo que resulta igual que la última vez.

Entonces, ¿cómo puedo arreglar mi sistema? Realmente necesito el nuevo avr, por favor :) Por cierto, mi sistema es Ubuntu 11.04

Vigi
fuente
¿Tienes Synaptic instalado en tu sistema?
¿Si porque? No debería tenerlo?
Omer
Mismo error (pero basado en libboost). Ninguna de las respuestas funcionó para mí.
isomorfismos el

Respuestas:

41

Después de recibir ese error, intente sudo apt-get -f installforzar una instalación de los archivos que no se cargaron debido al error.

Luego intente sudo apt-get updatenuevamente, de sudo apt-get -f installida y vuelta hasta que solo quede el paquete que tiene el error.

sudo dpkg --configure -a

y limpiar el caché

sudo apt-get clean

Cola de anillo
fuente
3
Gracias por la respuesta, pero encontré una solución justo cuando publicaste esto: PI abrió el administrador de paquetes sinápticos y filtró dos paquetes rotos que luego eliminé con SPM, que ahora todo funciona bien y sin problemas. ¡Logré instalar las dependencias y ahora estoy instalando avr usando el script de bingo! :) Todavía no está terminado, pero si falla, intentaré tu respuesta
Vigi
bueno escuchar su fija
Ringtail
ok, acabo de eliminar la partición 11.04 y la versión 11.10 recién instalada. ahora lo ejecuta junto a Windows Vista. Así que ahora tengo instalado el último avr / binutils / libs, etc. Así que ahora puedo compilar cosas para arduino :) yay!
Vigi
Como resultado de este problema, tampoco pude cargar los controladores del mouse y los controladores WLAN. Eso significa que no tengo más conexión a Internet y no puedo usar sudo apt-get -f install.
John Slegers
21

Esto generalmente ocurre como resultado de 'Dependencias insatisfechas para los paquetes instalados'.

Aquí hay una solución simple si tiene instalado 'Synaptic':

  • Abrir Synaptic.
  • Vaya a 'Estado' (en la navegación izquierda).
  • Elija 'roto'.
  • Elimina estos paquetes rotos.

De lo contrario, se puede tratar a través de CLI:

Abra la terminal y ejecute este comando:

sudo apt-get clean

El comando anterior limpiará el repositorio local del archivo de paquete recuperado.

sudo apt-get install -f

Corregirá dependencias rotas, es decir, -faquí significa "arreglar roto".

sudo dpkg --configure -a

configurará todos ( -a) los paquetes que aún no se han configurado. Al final, ejecute el comando de actualización sudo apt-get update.

Nabeel Ahmed
fuente
Como resultado de este problema, tampoco pude cargar los controladores del mouse y los controladores WLAN. Eso significa que no tengo más conexión a Internet y no puedo usar sudo apt-get -f install.
John Slegers
Puede usar un administrador de paquetes fuera de línea / portátil, es decir, Keryx o Cube: le ayuda a descargar paquetes y los últimos repositorios (en una carpeta o directamente a pendrive) desde otra computadora con conexión a Internet (Linux o Windows), una vez hecho, conecte el pendrive a la computadora sin conexión a internet e instale los paquetes descargados.
Nabeel Ahmed
Un tutorial paso a paso para usar Cube (no lo he usado yo mismo) - community.linuxmint.com/tutorial/view/1583
Nabeel Ahmed
Otra respuesta de askubuntu con la configuración paso a paso de Keryx - askubuntu.com/a/181913/58950
Nabeel Ahmed
Pude resolver simplemente usando sudo apt-get install -fy sudo dpkg --configure -a... después de reiniciar, recuperé la red, el audio, etc. :)
Luke
16

Abierto sinápticoInstalar sináptico . Luego ve al estado y elige Broken . Luego retire completamente los paquetes rotos.

Esto debería corregir su sistema.

ingrese la descripción de la imagen aquí

Comunidad
fuente
Estoy en Ubuntu 12.04. Tan pronto como abrí el Centro de software Synaptics, decía que el catálogo estaba roto y debía repararse, y me ofreció un botón de reparación, que solucionó el problema de inmediato.
Tyler Collier
3

Prueba: sudo apt-get update && sudo apt-get -f install
espero que esto resuelva el problema.

Frantique
fuente
2
No se resolvió por mí.
Damien Roche
Como resultado de este problema, tampoco pude cargar los controladores del mouse y los controladores WLAN. Eso significa que no tengo más conexión a Internet y no puedo usar sudo apt-get -f install.
John Slegers
1

Si aún no lo ha hecho, intente cambiar la referencia del repositorio de paquetes a 'Principal' o a los Estados Unidos . Hacer esto solucionó mi problema de dependencias insatisfechas de Python-dev (mi instalación de 12.04 estaba usando el repositorio de paquetes del Reino Unido, anteriormente).

  1. En 'Centro de software de Ubuntu' (USC), vaya al menú / pestaña 'Editar => Fuentes de software'.
  2. Cambie el valor desplegable 'Descargar desde' a 'Servidor principal' o un servidor en los Estados Unidos.
  3. Deje USC, el 'Administrador de actualizaciones' abierto del menú del programa de Ubuntu, y 'Buscar' actualizaciones de software (o emita 'sudo apt-get update' en una ventana de terminal).
  4. Actualice su software como lo haría normalmente, por ejemplo, a través de 'Update Manager' o apt-get / aptitude en una terminal.

Esto reparó mi repositorio y luego instalé lo que necesitaba después, como de costumbre.

Antes de rectificar mi problema con las instrucciones anteriores, varios comandos de aptitude / apt-get me sugirieron que eliminara muchos, muchos paquetes, pero, como pueden apreciar, no me apetecía perder mis más de 6 meses de adiciones de paquetes, y eso aunque ¡A veces tomo una instantánea de la lista de paquetes (vea mi esencia para obtener pistas)! Estoy muy contento de haberme enterado de las instrucciones que dejo aquí.

Espero que esto ayude.

Grande rico
fuente
1

Tuve el mismo problema, un

sudo apt-get clean

seguido de un

sudo apt-get update

seguido de un

sudo apt-get upgrade -f

arreglado. ¡Espero que esto ayude!

usuario152730
fuente
1
Como resultado de este problema, tampoco pude cargar los controladores del mouse y los controladores WLAN. Eso significa que no tengo más conexión a Internet y no puedo usar sudo apt-get -f install.
John Slegers