Dépendances non satisfaites (installation librairies 32 bits)

Tags: #<Tag:0x00007fc9f1583230> #<Tag:0x00007fc9f1583028> #<Tag:0x00007fc9f1582c68>

[EDIT : je suis en train de modifier pour afficher les retours correctement mais j’ai un peu de mal…]
Bonjour,

Je possède chez moi un pc qui tourne sous Debian 9, que je conserve dans mon salon (j’y accède par ssh) et qui me sert de “serveur” (je suis étudiants en réseaux, il me sert pour m’entraîner et découvrir, en plus de serveur web :slight_smile: ).
Bref, j’ai aujourd’hui voulu essayer d’installer un serveur garry’s mod, qui utilise les libraires 32 bits pour fonctionner.
Lors de l’installation du serveur Garry’s mod, il me retourne que

 Warning! Missing dependencies: lib32gcc1 libstdc++6:i386 lib32tinfo5    

Et me demande d’exécuter cette commande pour les installer:

sudo dpkg --add-architecture i386; sudo apt update; sudo apt install lib32gcc1 libstdc++6:i386 lib32tinfo5

Le dpkg -add-architecture ne retourne rien, l’apt update fonctionne bien mais lorsque j’essaye d’installer lib32gcc1, libstdc++6:i386 et lib32tinfo5 voici le retour :

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Certains paquets ne peuvent être installés. Ceci peut signifier
que vous avez demandé l'impossible, ou bien, si vous utilisez
la distribution unstable, que certains paquets n'ont pas encore
été créés ou ne sont pas sortis d'Incoming.
L'information suivante devrait vous aider à résoudre la situation :
Les paquets suivants contiennent des dépendances non satisfaites :
 hunspell-fr : Dépend: hunspell-fr-classical mais ne sera pas installé ou
                        hunspell-fr-modern mais ne sera pas installé ou
                        hunspell-fr-revised mais ne sera pas installé ou
                        hunspell-fr-comprehensive mais ne sera pas installé
 lib32gcc1 : Dépend: libc6-i386 (>= 2.2.4) mais ne sera pas installé
 lib32tinfo5 : Dépend: libc6-i386 (>= 2.16) mais ne sera pas installé
 libdom4j-java : Dépend: libmsv-java mais ne sera pas installé
 libgdbm3 : Dépend: dpkg (>= 1.15.4) ou
                     install-info
 libstdc++6:i386 : Dépend: libc6:i386 (>= 2.18) mais ne sera pas installé
                   Dépend: libgcc1:i386 (>= 1:4.2) mais ne sera pas installé
E: Erreur, pkgProblem::Resolve a généré des ruptures, ce qui a pu être causé par les paquets devant être gardés en l'état.

Voici mon sources.list :

#
# deb cdrom:[Debian GNU/Linux 9.5.0 _Stretch_ - Official amd64 NETINST 20180714-10:25]/ stretch main

# deb cdrom:[Debian GNU/Linux 9.5.0 _Stretch_ - Official amd64 NETINST 20180714-10:25]/ stretch main

deb http://ftp.fr.debian.org/debian/ stretch main
deb-src http://ftp.fr.debian.org/debian/ stretch main
deb http://security.debian.org/debian-security stretch/updates main
deb-src http://security.debian.org/debian-security stretch/updates main

# stretch-updates, previously known as 'volatile'
deb http://ftp.fr.debian.org/debian/ stretch-updates main
deb-src http://ftp.fr.debian.org/debian/ stretch-updates main

Je sais que mon problème est similaire à d’autres déjà résolus, mais les réponses apportées sur d’autres sujets ne représentent pas vraiment mon problème/ma situation.
De ce que j’ai pu comprendre, j’aurais peut être un problème dans mes sources (une manquante pour les paquets que je demande?)

Je remercie d’avance ceux qui prendront le temps de me répondre, et je suis sincèrement désolé si le même problème à déjà été résolu autre part, j’ai raté le sujet dans mes recherches…

Cordialement,

Disso

Quelle méthode as tu suivi ?

uname -rv pourrait être utile, aussi.

C’est peut être normal, je ne sais pas.

Par contre, si c’est pour juste installer un seul paquet en i386, le --force-architecture aurait pu suffire.

Mais avant tout et aprés avoir tout lu, je dirais de faire par étape:
sudo apt -a=i386 install libstdc++6
sudo apt install lib32gcc1 lib32tinfo5

A priori, la lib que tu as besoin d’installer en i386 est en main, et j’imagine que les dépendances qu’elle a besoin d’installer son en main aussi.
Aprés, il est possible de rajouter contrib et non-free aprés main partout, mais théoriquement pas obligé.

1 J'aime

Ou passer par aptitude ou apt-get, aussi, la résolution des conflits de dépendance ne se fait pas toujours de la même manière, parfois ça peut passer avec l’un et pas avec l’autre.

1 J'aime

Quelle méthode as tu suivi ?
uname -rv pourrait être utile, aussi.

https://terageek.org/tuto/tuto-serveur-gmod-dedie-sous-linux/
Ce tutoriel, il utilise un script d’installation de https://linuxgsm.com/lgsm/gmodserver/ il me semble

Voici le uname -rv
4.9.0-8-amd64 #1 SMP Debian 4.9.144-3 (2019-02-02)

sudo apt -a=i386 install libstdc++6
sudo apt install lib32gcc1 lib32tinfo5

Retourne :
E: L'option « a » de la ligne de commande [-a=i386] n'est pas reconnue quand elle est utilisée avec d'autres options.

Ou passer par aptitude ou apt-get, aussi, la résolution des conflits de dépendance ne se fait pas toujours de la même manière, parfois ça peut passer avec l’un et pas avec l’autre.

Impossible d’obtenir aptitude par apt, un autre problème de dépendance m’empêche l’installation…

Là je ne pige pas.
Pourtant, c’était dans le man…
Oublions le -a alors, j’ai gratté, et même sans le -a, la demande du paquet en architecture i386 aurait du tirer ses dépendances en i386

Bon bah c’est trés étonnant, mais ça doit vraiment être qu’il manque contrib non-free dans les sources pour que ça passe, alors.
Remplace main par main contrib non-free dans tes sources, apt update, éventuellement apt upgrade, parcequ’il y a des choses qui me chagrinent sur hunspell à moitié installé, et ensuite réessaye d’installer les libs.

Si l’ajout de contrib non-free ne passe encore pas, pour creuser de ce coté là, que dit apt-mark showhold ?

Remplace main par main contrib non-free dans tes sources, apt update , éventuellement apt upgrade , parcequ’il y a des choses qui me chagrinent sur hunspell à moitié installé, et ensuite réessaye d’installer les libs.

Toujours la même erreur, j’ai bien update et upgrade.

Si l’ajout de contrib non-free ne passe encore pas, pour creuser de ce coté là, que dit apt-mark showhold ?

La commande ne me retourne rien.

De plus toujours impossible d’installer Aptitude

Je tenais à te remercier pour l’aide déjà fournie en tout cas :slight_smile:

Peux-tu nous fournir le retour d’un update et d’un upgrade ?

Peux-tu nous confirmer que tu ne possède rien comme fichier de sources dans /etc/apt/sources.list.d ?

Peux-tu nous fournir le retour d’un update et d’un upgrade ?

Update :
Ign :1 http://ftp.fr.debian.org/debian stretch InRelease Atteint :2 http://security.debian.org/debian-security stretch/updates InRelease Atteint :3 http://ftp.fr.debian.org/debian stretch-updates InRelease Atteint :4 https://deb.nodesource.com/node_11.x stretch InRelease Atteint :5 http://ftp.fr.debian.org/debian stretch Release Ign :6 https://attic.owncloud.com/org/download/repositories/stable/Debian_9.0 InRelease Atteint :8 https://download.owncloud.org/download/repositories/stable/Debian_9.0 Release Lecture des listes de paquets... Fait Construction de l'arbre des dépendances Lecture des informations d'état... Fait Tous les paquets sont à jour.

Upgrade :
Lecture des listes de paquets... Fait Construction de l'arbre des dépendances Lecture des informations d'état... Fait Calcul de la mise à jour... Fait 0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.

Peux-tu nous confirmer que tu ne possède rien comme fichier de sources dans /etc/apt/sources.list.d ?

Si je possède : nodesource.list nodesource.list.save owncloud.list owncloud.list.save

Donc si je comprends bien tous est corrects lors d’un update / upgrade, donc quels est le message lors de la tentative d’installation de aptitude ?

Lecture des listes de paquets... Fait Construction de l'arbre des dépendances Lecture des informations d'état... Fait Certains paquets ne peuvent être installés. Ceci peut signifier que vous avez demandé l'impossible, ou bien, si vous utilisez la distribution unstable, que certains paquets n'ont pas encore été créés ou ne sont pas sortis d'Incoming. L'information suivante devrait vous aider à résoudre la situation : Les paquets suivants contiennent des dépendances non satisfaites : aptitude : Dépend: libapt-pkg5.0 (>= 1.1) mais ne sera pas installé E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l'état ».

Salut
que dit

apt policy libapt-pkg5.0

ton système est il ok?

dpkg --audit

Hey !

libapt-pkg5.0:
Installé : 1.8.0~rc3
Candidat : 1.8.0~rc3
Table de version :
*** 1.8.0~rc3 100
100 /var/lib/dpkg/status
1.4.9 990
990 http://ftp.fr.debian.org/debian stretch/main amd64 Packages
990 http://security.debian.org/debian-security stretch/updates/main amd64 Packages

dpkg --audit ne retourne rien

où as tu pris la version qui n’appartient pas à Debian, c’est le Bronx dans tes sources
libapt-pkg5.0:
Installé : 1.8.0~rc3

essai
apt install libapt-pkg5.0=1.4.9

1 J'aime

ça sent le piochage à un moment chez Ubuntu tout ça …

Pas forcément.
Le script d’install dont on parlait ici:

A un moment, tu exécute sur la machine ce script:
https://linuxgsm.com/dl/linuxgsm.sh
qui est généré dynamiquement au moment ou tu le download en fonction de la manière dot il est appelé.
J’ai un peu regardé (rapide) et ça va chercher du git pour le compiler sur les libs locales, ça télécharge plein de trucs.
Faudrait nettoyer les versions apt, pour se remettre en pure stable, et repartir sur un tuto pur debian, ou au moins clair sur ce qui s’installe pour pouvoir adapter.

Je t’avoue que ce pc a servi de test pour de nombreuses choses donc il est possible que j’ai merdé à un moment ^^

essai
apt install libapt-pkg5.0=1.4.9

Ça m’a viré apt pour le coup, est-ce que je le réinstalle ?

Avec apt, bien sûr.
(se retient d’exploser de rire et va le faire discrètement dehors).

ca ne le vire pas ça le retrograde dans la version officielle Debian, je parle de libapt-pkg5.0=1.4.9 si tu n’a pas été attentif sur les messages avant de taper Y sans réfléchir…t’es mal

J’ai utilisé ce terme car ça m’a bien retourné :

Les paquets suivants seront ENLEVÉS :
apt apt-listchanges apt-transport-https cron-apt python3-apt python3-reportbug python3-software-properties reportbug software-properties-common
task-french task-french-desktop task-laptop task-ssh-server tasksel tasksel-data

Et lors d’un simple “apt” la commande n’est pas reconnue

Je suis très reconnaissant du fait que vous m’aidiez mais n’abusez pas, je lis les retours de commande, et quand vous me demandez d’essayer celle-ci, je vous fais confiance ^^

Note que je ne t’engueule pas, je suis juste peu charitable en riant de tes petits problémes.
Est ca qu’apt-get install apt fonctionne ?