¡Los siguientes paquetes tienen dependencias insatisfechas!

36

Estoy escribiendo esto porque estoy muy confundido acerca de la instalación de PostgreSQL 9.3 en mi Ubuntu 14.04. Primero lo necesito para mi desarrollo Python / Django, y me encontré con el problema cuando intenté instalarlo. Ahora tengo este error y me está volviendo loco:

The following packages have unmet dependencies:
postgresql-9.3 : Depends: postgresql-client-9.3 but it is not going to be installed
Depends: postgresql-common (>= 142~) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Encontré algunas soluciones en línea ( ¿Cómo resuelvo dependencias insatisfechas después de agregar un PPA? ), E hice todo lo posible en la parte de Medidas preventivas, porque he tenido un problema de paquetes rotos, y nuevamente después de que me volviera a mostrar este error .

Lo segundo que he seguido es el tutorial oficial de instalación de PostgreSQL ( http://www.postgresql.org/download/linux/ubuntu/ ), y he tenido repositorios duplicados, pero los he eliminado y he agregado uno nuevo pero Todavía este error.

policía
fuente

Respuestas:

36

Puede instalar el paquete usando.

asegúrese de que las fuentes de repos están actualizadas

sudo apt-get update

Para instalar el paquete.

sudo apt-get install packagename

Una vez que el paquete determina que le faltan algunas dependencias, ejecute el siguiente comando para corregir las dependencias rotas o faltantes.

sudo apt-get install -f

El comando anterior solo descargará las dependencias faltantes si ya ha instalado el paquete.

pesada guianza
fuente
2
Gracias, pensé que significaba uso sudo apt-get install -f packagenamey estaba recibiendo el mismo error.
Charles Clayton
1
Esto no funciona con los errores mínimos de python2.7 .
IgorGanapolsky
8

A veces, las dependencias que necesitan reparación no están relacionadas con el programa que está intentando instalar. En mi caso, estaba emitiendo este error:

Los siguientes tienen dependencias insatisfechas

shashlik: Depende: libc6-i386 pero no se instalará

Depende: lib32gcc1 pero no se instalará

Depende: lib32z1 pero no se instalará

Resultó que había intentado instalar un programa llamado "Shashlik" y la instalación había fallado. Entonces ejecuté el código:

sudo apt-get --purge remove shashlik

Y luego corrí:

sudo apt install autoconf

Esto pareció corregir el error cuando mi programa se instaló. No estoy seguro de cuánto ayudó el segundo comando, pero lo puse allí en caso de que fuera necesario para que la solución funcionara.

Joel Winterton
fuente
¿Cómo determinaste que este era el problema?
kevinkayaks
5

Permítanme compartir con otras personas mi experiencia con la instalación postgresql-9.3. En primer lugar, he estado luchando con esto durante aproximadamente 4/5 días, y finalmente logré hacerlo.

Todo salió mal con estos desagradables errores que compartí en mi primera publicación, ya que intenté buscarlo en Google y descubrí que las personas tienen más menos el mismo error o luchan por resolver uno similar.

En pocas palabras, tiene una muy buena respuesta aquí sobre cómo resolver paquetes no satisfechos:

¿Cómo resuelvo dependencias insatisfechas después de agregar un PPA?

Mi error fue que hice un repositorio duplicado, y la respuesta en este enlace resolvió que, este comando sudo apt-get install -facaba de cometer otro error, debe hacerlo manualmente, al menos lo hice (lea la sección Medidas preventivas, pero puede leerlo en Al final, es un post imba).

En segundo lugar, logro googlear esta publicación desde la página oficial de PostgreSQL http://www.postgresql.org/message-id/[email protected] (este es el error que la gente suele tener cuando están luchando con la instalación de postgresql ), esto me llevó a
https://wiki.postgresql.org/wiki/Apt , esta es la forma correcta de agregar paquetes PostgreSQL a su sistema, solo léalo y hágalo paso a paso.

El tercer paso son series de comandos provistos en la publicación @vembutech:

sudo apt-get update && sudo apt-get upgrade
sudo apt-get install postgresql-9.3 postgresql-contrib-9.3
policía
fuente
5

Sé que llego un poco tarde, pero ninguna de las soluciones anteriores funcionó para mí. Lo que realmente resolvió mi problema fue usar en aptitudelugar de apt-get. aptitudesugerirá soluciones al problema. Por ejemplo:

The following actions will resolve these dependencies:

Keep the following packages at their current version:
1)     libyaml-dev [Not Installed]                        

Accept this solution? [Y/n/q/? (n)

The following actions will resolve these dependencies:

Downgrade the following packages:                                
1)     libyaml-0-2 [0.1.4-3ubuntu3.1 (now) -> 0.1.4-3ubuntu3 (trusty)]

Accept this solution? [Y/n/q/?] (Y)

como se discutió en esta publicación .

Gabriel Ziegler
fuente
3

Pruebe instalando el siguiente comando.

sudo apt-get install postgresql-common=151.pgdg12.4+1

sudo apt-get install postgresql-9.3 postgresql-contrib-9.3
vembutech
fuente
1
"E: No se encontró la versión '151.pgdg12.4 + 1' para 'postgresql-common'", error nuevamente ...
copser
Logré hacerlo, ejecuté el segundo comando y finalmente lo hice, @vembutech <3
copser