I seguenti pacchetti hanno dipendenze non soddisfatte!


36

Sto scrivendo questo perché sono molto confuso sull'installazione di PostgreSQL 9.3 sul mio Ubuntu 14.04. Innanzitutto ne ho bisogno per il mio sviluppo Python / Django e ho riscontrato un problema quando ho provato a installarlo. Ora ho questo errore e mi sta facendo impazzire:

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.

Ho trovato alcune soluzioni online ( Come posso risolvere le dipendenze non soddisfatte dopo aver aggiunto un PPA? ) E ho fatto tutto per la parte Misure preventive, perché ho avuto qualche problema con i pacchetti rotti, e di nuovo dopo che ho avuto questo errore mostrami di nuovo .

La seconda cosa che ho seguito al tutorial ufficiale di installazione di PostgreSQL ( http://www.postgresql.org/download/linux/ubuntu/ ), e ho avuto repository duplicati, ma li ho cancellati e ne ho aggiunto uno nuovo ma ancora questo errore.


Risposte:


36

È possibile installare il pacchetto utilizzando.

assicurarsi che le fonti dei repository siano aggiornate

sudo apt-get update

Per installare il pacchetto.

sudo apt-get install packagename

Una volta che il pacchetto determina la presenza di dipendenze mancanti, eseguire il comando seguente per correggere le dipendenze rotte o mancanti.

sudo apt-get install -f

Il comando precedente scaricherà le dipendenze mancanti solo se il pacchetto è già stato installato.


2
Grazie, ho pensato che significasse uso sudo apt-get install -f packagenamee stava ottenendo lo stesso errore.
Charles Clayton,

1
Questo non funziona con errori python2.7-minimal .
IgorGanapolsky,

8

A volte le dipendenze che devono essere riparate non sono correlate al programma che si sta tentando di installare. Nel mio caso stava dando questo errore:

Quanto segue ha dipendenze non soddisfatte

shashlik: dipende da: libc6-i386 ma non verrà installato

Dipende da lib32gcc1 ma non verrà installato

Dipende da: lib32z1 ma non verrà installato

Si è scoperto che avevo tentato di installare un programma chiamato "Shashlik" e l'installazione non era riuscita. Quindi ho eseguito il codice:

sudo apt-get --purge remove shashlik

E poi ho corso:

sudo apt install autoconf

Questo sembrava correggere l'errore man mano che il mio programma veniva installato. Non sono sicuro di quanto abbia aiutato il secondo comando, ma l'ho inserito nel caso fosse necessario per far funzionare la soluzione.


come hai deciso che questo era il problema?
kevinkayaks

5

Vorrei condividere con altre persone la mia esperienza con l'installazione postgresql-9.3. Prima di tutto ho lottato con questo per circa 4/5 giorni, e finalmente riesco a farlo.

Tutto è andato storto con questi cattivi errori che ho condiviso nel mio primo post, poiché ho cercato di cercarlo su Google e scoprire che le persone hanno più meno lo stesso errore o che lottano per risolverne uno simile.

Per farla breve, hai una bella risposta qui come risolvere i pacchetti non soddisfatti:

Come posso risolvere le dipendenze non soddisfatte dopo aver aggiunto un PPA?

Il mio errore è stato che ho creato un repository duplicato e la risposta in questo link ha risolto che, questo comando ha sudo apt-get install -fappena fatto un altro errore, devi farlo manualmente, almeno l'ho fatto (leggi la sezione Misure preventive, ma puoi leggere alla fine, è un post imba).

In secondo luogo riesco a google questo post dalla pagina ufficiale di PostgreSQL http://www.postgresql.org/message-id/20140327084212.GA12703@msgid.df7cb.de (questo è l'errore che le persone hanno di solito quando hanno difficoltà con l'installazione di postgresql ), questo mi ha portato a
https://wiki.postgresql.org/wiki/Apt , questo è il modo corretto per aggiungere pacchetti PostgreSQL al tuo sistema, basta leggerlo e farlo passo dopo passo.

Il terzo passo è una serie di comandi forniti nel post @vembutech:

sudo apt-get update && sudo apt-get upgrade
sudo apt-get install postgresql-9.3 postgresql-contrib-9.3

5

So di essere un po 'in ritardo, ma nessuna delle soluzioni di cui sopra ha funzionato per me. Ciò che ha veramente risolto il mio problema è stato usare aptitudeinvece di apt-get. aptitudesuggerirà soluzioni al problema. Per esempio:

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)

come discusso in questo post .


3

Prova installando il comando with below.

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

sudo apt-get install postgresql-9.3 postgresql-contrib-9.3

1
"E: la versione '151.pgdg12.4 + 1' per 'postgresql-common' non è stata trovata", errore di nuovo ...
copser

Riesco a farlo, eseguo il secondo comando e finalmente l'ho fatto, @vembutech <3
copser
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.