Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

apt-get remove ne fait pas ce que je voudrais :(

3 réponses
Avatar
Thierry B.
Bonsoir.

En gros, tout est dans le subject. Le contexte: une machine i386 qui
est en Sid d'il y a bien trois ans, et qui n'a pas bougé depuis.
A l'époque j'avais installé PostgreSQL par apt:

#v+
sid:~# dpkg --get-selections | grep -i postgr
postgresql-7.4 deinstall
postgresql-client install
postgresql-client-7.4 install
postgresql-common install
#v-

Plus tard, j'ai eu besoin du paquet readline-devel. J'ai cherché un
peu, et trouvé un truc approchant, que j'ai apt-installé, sans soucis,
tout baigne. Et maintenant, je voudrais virer tout le vieux Postgres,
en évitant de casser le reste du système. Hélas, j'ai une sale réponse
d'apt que j'ai du mal à comprendre...

#v+
sid:~# apt-get remove postgresql-common
Reading package lists... Done
Building dependency tree... Done
You might want to run `apt-get -f install' to correct these:
The following packages have unmet dependencies:
libreadline5-dev: Depends: libreadline5 (= 5.0-10) but 5.1-6 is to be
installed
postgresql-client-7.4: Depends: postgresql-common (>= 24) but it is
not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or
specify a solution).
#v-

Voilà, je ne sais pas exactement quoi faire, parce que ces jours-ci,
je n'ai _vraiment_ pas envie de casser cette machine. Mais j'aimerais
bien pouvoir la nettoyer à fond coté Postgres pour pouvoir compiler
et installer une version récente et bricolée sans risquer d'avoir
des scories de la 7.4 qui interfèrent avec mes expériences.



--
On ne peur pas connaître d'avance la taille de STDIN? Il n'y a
pas de sizeof(stdin)?
--{ JP: le C n'est pas omniscient ? }--

3 réponses

Avatar
Thierry B.
--{ Chaumond a plopé ceci: }--

Le Mon, 03 Mar 2008 21:32:22 +0100, Thierry B. a écrit :

Voilà, je ne sais pas exactement quoi faire, parce que ces jours-ci, je
n'ai _vraiment_ pas envie de casser cette machine. Mais j'aimerais bien
pouvoir la nettoyer à fond coté Postgres pour pouvoir compiler et
installer une version récente et bricolée sans risquer d'avoir des
scories de la 7.4 qui interfèrent avec mes expériences.


Que donne apt-get --purge remove postgres ?


Ben ça donne rien, j'ai toujours le même message étrange.

J'vais peut-être essayer la suggestion d'apt pour réparer le truc,
mais j'ai quand même un doute. Parce que:

#v+
flo:~# apt-get --dry-run -f install
Reading package lists... Done
Building dependency tree... Done
Correcting dependencies... Done
The following extra packages will be installed:
libreadline5-dev
The following packages will be upgraded:
libreadline5-dev
1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
Inst libreadline5-dev [5.0-10] (5.1-6 Debian:testing)
Conf libreadline5-dev (5.1-6 Debian:testing)
#v-

Je ne comprend pas pourquoi il veut installer "libreadline5-dev",
puisque ce truc est déja opérationnel, puisque j'ai compilé des
machins qui l'utilisent.

En fait, c'est la logique du truc qui m'interpelle: il est certain
qu'une partie de Postgres dépend de la libreadline (le client psql)
et il est probable qu'il ne dépend pas du -dev installé un peu
sauvage. Alors pourquoi virer Postgres peut interférer avec ça ?


--
PS1='C:${PWD////}> '


Avatar
Samuel Colin
Dixit Thierry B. :
Bonsoir.

'soir


#v+
sid:~# apt-get remove postgresql-common
Reading package lists... Done
Building dependency tree... Done
You might want to run `apt-get -f install' to correct these:
The following packages have unmet dependencies:
libreadline5-dev: Depends: libreadline5 (= 5.0-10) but 5.1-6 is to be
installed
postgresql-client-7.4: Depends: postgresql-common (>= 24) but it is
not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or
specify a solution).
#v-

Ça veut dire qu'il y a des paquets qui dépendent de trucs qui n'existent

plus, alors apt manque d'imagination pour résoudre le problème.
D'ailleurs on ne lui demande pas d'être imaginatif.
Tu peux essayer de résoudre le problème en spécifiant tous les paquets
que tu veux enlever, soit ici:

sudo apt-get remove postgresql-common postgresql-client-7.4 etc etc

Le coup du libreadline est un peu plus étrange, en revanche, l'idéal
serait de le mettre à jour (apt-get upgrade lireadline5-dev) si ça t'est
possible.
Sinon (apt-cache policy libreadline5-dev libreadline5) histoire qu'on se
fasse une idée de ce qu'il se passe.

T'inquiète, le truc n'a pas l'air franchement cassé.

Avatar
Nicolas George
"Thierry B." wrote in message :
The following packages will be upgraded:
libreadline5-dev
Je ne comprend pas pourquoi il veut installer "libreadline5-dev",
puisque ce truc est déja opérationnel, puisque j'ai compilé des
machins qui l'utilisent.


Upgrader, pas installer.


flo:~# apt-get --dry-run -f install

En fait, c'est la logique du truc qui m'interpelle: il est certain
qu'une partie de Postgres dépend de la libreadline (le client psql)
et il est probable qu'il ne dépend pas du -dev installé un peu
sauvage. Alors pourquoi virer Postgres peut interférer avec ça ?


Ça n'a aucun rapport avec PostgreSQL : regarde ta ligne de commande, il n'y
est pas question des paquets de PostgreSQL. Ton système de paquets est dans
un état incohérent, tu dois le réparer avant toute opération.