Apt-get and multiarch dependencies

Bonjour,

Sur la page Multiarch, il est écrit :

[quote]apt-get install package:architecture

That package’s dependencies will be installed automatically for the correct architectures (same-arch library deps, machine-arch for other deps).[/quote]

Cependant, lorsque j’essaie d’installer un paquet i386 sur ma distrib Wheezy amd64, ce n’est pas ce qu’il se passe :

[code]$ sudo apt-get install libncurses5-dev:i386
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 :
libncurses5-dev:i386 : Dépend: libtinfo5:i386 (= 5.9-10) mais ne sera pas installé
Dépend: libncurses5:i386 (= 5.9-10) mais ne sera pas installé
Dépend: libtinfo-dev:i386 (= 5.9-10) mais ne sera pas installé
Dépend: libc-dev:i386
E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l’état »[/code]

Je peux essayer d’installer les dépendances manquantes, mais alors il en manque d’autres récursivement :

[code]$ sudo apt-get install libncurses5-dev:i386 libtinfo5:i386 libncurses5:i386 libtinfo-dev:i386 libc-dev:i386
Lecture des listes de paquets… Fait
Construction de l’arbre des dépendances
Lecture des informations d’état… Fait
Note : sélection de « libc6-dev:i386 » au lieu de « libc-dev:i386 »
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 :
libc6-dev:i386 : Dépend: libc6:i386 (= 2.13-38) mais ne sera pas installé
Dépend: libc-dev-bin:i386 (= 2.13-38)
Recommande: gcc:i386 mais ne sera pas installé ou
c-compiler:i386
libncurses5:i386 : Dépend: libc6:i386 (>= 2.4) mais ne sera pas installé
Recommande: libgpm2:i386 mais ne sera pas installé
libtinfo5:i386 : Dépend: libc6:i386 (>= 2.4) mais ne sera pas installé
E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l’état ».[/code]

Comment faire en sorte qu’apt-get les installe automatiquement ?

Merci de votre aide.

as tu essayé aptitude ?

Salut,

Update fait, évidemment.

Pas de paquet en hold ?

[code]# aptitude search “~ahold”

dpkg --get-selections | grep ‘hold$’[/code]

Vérifies également l’état des paquets.

Espaces disque suffisant ?

Remarque peut-être idiote mais l’architecture i386 a-t-elle bien été ajoutée et un update effectué ??

[quote=“cette même page multiarch”]Usage

Configuring architectures

To add an extra architecture (in Debian from dpkg 1.16.2 onwards):

dpkg --add-architecture [/quote]

Merci de vos réponses.

Oui.

[quote=“BelZéButh”]Pas de paquet en hold ?

[code]# aptitude search “~ahold”

dpkg --get-selections | grep ‘hold$’[/code][/quote]

Non, ces commandes ne donnent aucune réponse.

Oui :

$ dpkg --print-architecture amd64 $ dpkg --print-foreign-architectures i386

J’essaie :

[code]$ sudo aptitude install libncurses5-dev:i386
Les NOUVEAUX paquets suivants vont être installés :
binutils:i386{ab} cpp:i386{ab} cpp-4.7:i386{ab} gcc:i386{ab} gcc-4.7:i386{ab} libc-dev-bin:i386{ab} libc6:i386{ab} libc6-dev:i386{ab} libc6-i686:i386{a} libgcc1:i386{a} libgmp10:i386{a}
libgomp1:i386{a} libgpm2:i386{a} libitm1:i386{a} libmpc2:i386{a} libmpfr4:i386{a} libncurses5:i386{a} libncurses5-dev:i386 libquadmath0:i386{a} libstdc++6:i386{a} libtinfo-dev:i386{a}
libtinfo5:i386{a} linux-libc-dev:i386{a} zlib1g:i386{a}
0 paquets mis à jour, 24 nouvellement installés, 0 à enlever et 1 non mis à jour.
Il est nécessaire de télécharger 31,5 Mo d’archives. Après dépaquetage, 82,8 Mo seront utilisés.
Les paquets suivants ont des dépendances non satisfaites :
gcc-4.7 : Est en conflit avec: gcc-4.7:i386 mais 4.7.2-5 doit être installé.
gcc-4.7:i386 : Est en conflit avec: gcc-4.7 mais 4.7.2-5 est installé.
cpp : Est en conflit avec: cpp:i386 mais 4:4.7.2-1 doit être installé.
cpp:i386 : Est en conflit avec: cpp mais 4:4.7.2-1 est installé.
gcc : Est en conflit avec: gcc:i386 mais 4:4.7.2-1 doit être installé.
gcc:i386 : Est en conflit avec: gcc mais 4:4.7.2-1 est installé.
libc6-dev : Casse: libc6-dev:i386 (!= 2.17-3) mais 2.13-38 doit être installé.
libc6-dev:i386 : Casse: libc6-dev (!= 2.13-38) mais 2.17-3 est installé.
cpp-4.7 : Est en conflit avec: cpp-4.7:i386 mais 4.7.2-5 doit être installé.
cpp-4.7:i386 : Est en conflit avec: cpp-4.7 mais 4.7.2-5 est installé.
libc-dev-bin : Est en conflit avec: libc-dev-bin:i386 mais 2.13-38 doit être installé.
libc-dev-bin:i386 : Est en conflit avec: libc-dev-bin mais 2.17-3 est installé.
libc6 : Casse: libc6:i386 (!= 2.17-3) mais 2.13-38 doit être installé.
libc6:i386 : Casse: libc6 (!= 2.13-38) mais 2.17-3 est installé.
binutils : Est en conflit avec: binutils:i386 mais 2.22-8 doit être installé.
binutils:i386 : Est en conflit avec: binutils mais 2.22-8 est installé.
ouverts : 208 ; fermés : 979 ; reportés : 142 ; en conflit : 200 OLes actio
ns suivantes permettront de résoudre ces dépendances :

  Supprimer les paquets suivants :                                   
  1.  build-essential                                                  
    
  2.  dh-autoreconf                                                    
    
  3.  g++                                                              
    
  4.  g++-4.7                                                          
    
  5.  libc-dev-bin                                                     
    
  6.  libc6-dev                                                        
    
  7.  libglib2.0-dev                                                   
    
  8.  libgstreamer0.10-dev                                             
    
  9.  libpcre3-dev                                                     
    
  10. libstdc++6-4.7-dev                                               
    
  11. libtool                                                          
    
  12. zlib1g-dev                                                       
    

    Conserver les paquets suivants dans leur version actuelle :

  13. binutils:i386 [Non installé]                                     
    
  14. cpp:i386 [Non installé]                                          
    
  15. cpp-4.7:i386 [Non installé]                                      
    
  16. gcc:i386 [Non installé]                                          
    
  17. gcc-4.7:i386 [Non installé]                                      
    
  18. libc-dev-bin:i386 [Non installé]                                 
    
  19. libc6:i386 [Non installé]                                        
    
  20. libc6-dev:i386 [Non installé]                                    
    
  21. libc6-i686:i386 [Non installé]                                   
    
  22. libgcc1:i386 [Non installé]                                      
    
  23. libgmp10:i386 [Non installé]                                     
    
  24. libgomp1:i386 [Non installé]                                     
    
  25. libgpm2:i386 [Non installé]                                      
    
  26. libitm1:i386 [Non installé]                                      
    
  27. libmpc2:i386 [Non installé]                                      
    
  28. libmpfr4:i386 [Non installé]                                     
    
  29. libncurses5:i386 [Non installé]                                  
    
  30. libncurses5-dev:i386 [Non installé]                              
    
  31. libquadmath0:i386 [Non installé]                                 
    
  32. libstdc++6:i386 [Non installé]                                   
    
  33. libtinfo-dev:i386 [Non installé]
    
  34. libtinfo5:i386 [Non installé]                                    
    
  35. zlib1g:i386 [Non installé]                                       
    

    Laisser les dépendances suivantes non satisfaites :

  36. dpkg-dev recommande build-essential                              
    
  37. gcc-4.6 recommande libc6-dev (>= 2.13-5)                         
    
  38. gcc-4.7 recommande libc6-dev (>= 2.13-5)                         
    
  39. gcc recommande libc6-dev | libc-dev                              
    
  40. gstreamer0.10-doc recommande libgstreamer0.10-dev (= 0.10.36-1.2)
    
  41. libltdl-dev recommande libtool                                   
    
  42. python-pip recommande build-essential                            
    
  43. libc6-dev:i386 recommande gcc:i386 | c-compiler:i386             
    
  44. libncurses5:i386 recommande libgpm2:i386                         
    

Accepter cette solution ? [Y/n/q/?][/code]

Salut,

Ne serait tu pas en Squeeze ? Ou le cul entre les deux ?

Avec à la clé un sources.list/sources.list.d/preferences bancale …

$ aptitude -s install libncurses5-dev:i386 Les NOUVEAUX paquets suivants vont être installés : libncurses5-dev libtinfo-dev{a} 0 paquets mis à jour, 2 nouvellement installés, 0 à enlever et 9 non mis à jour. Il est nécessaire de télécharger 306 ko d'archives. Après dépaquetage, 1 145 ko seront utilisés. Voulez-vous continuer ? [Y/n/?]

[quote=“BelZéButh”]Salut,

Ne serait tu pas en Squeeze ? Ou le cul entre les deux ?

Avec à la clé un sources.list/sources.list.d/preferences bancale …

$ aptitude -s install libncurses5-dev:i386 Les NOUVEAUX paquets suivants vont être installés : libncurses5-dev libtinfo-dev{a} 0 paquets mis à jour, 2 nouvellement installés, 0 à enlever et 9 non mis à jour. Il est nécessaire de télécharger 306 ko d'archives. Après dépaquetage, 1 145 ko seront utilisés. Voulez-vous continuer ? [Y/n/?][/quote]

Ah, je pense que tu t’approches du problème. Je ne me rappelais plus que j’étais pas en full wheezy sur cette machine.

Voici mon sources.list :

[code]deb http://ftp2.fr.debian.org/debian/ squeeze main non-free contrib

deb http://ftp2.fr.debian.org/debian/ wheezy main non-free contrib
deb-src http://ftp2.fr.debian.org/debian/ wheezy main non-free contrib

deb http://ftp2.fr.debian.org/debian/ unstable main non-free contrib

deb http://ftp2.fr.debian.org/debian/ experimental main non-free contrib

deb http://security.debian.org/ wheezy/updates main contrib non-free
deb-src http://security.debian.org/ wheezy/updates main contrib non-free[/code]

Et dans /etc/apt/preferences.d/wheezy-only :

[code]Package: *
Pin: release n=wheezy
Pin-Priority: 500

Package: *
Pin: release o=Debian
Pin-Priority: -10[/code]

Je vais essayer en nettoyant tout ça, mais ça devrait marcher quand même, non? Mon apt_preferences demande de n’utiliser que les paquets de wheezy…

J’ai nettoyé mon sources.list :

[code]deb http://ftp.fr.debian.org/debian/ wheezy main non-free contrib
deb-src http://ftp.fr.debian.org/debian/ wheezy main non-free contrib

deb http://security.debian.org/ wheezy/updates main contrib non-free
deb-src http://security.debian.org/ wheezy/updates main contrib non-free[/code]

J’ai viré mon apt_preferences (/etc/apt/preferences.d/wheezy-only).

Après un apt-get update et apt-get upgrade (qui ne fait rien), j’ai toujours le problème:

[code]$ sudo apt-get -s install libncurses5-dev:i386
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 :
libncurses5-dev:i386 : Dépend: libtinfo5:i386 (= 5.9-10) mais ne sera pas installé
Dépend: libncurses5:i386 (= 5.9-10) mais ne sera pas installé
Dépend: libtinfo-dev:i386 (= 5.9-10) mais ne sera pas installé
Dépend: libc-dev:i386
E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l’état ».[/code]

Je ne suis pas sur de comprendre cette dernière.

Ou en est tu dans ta migration Wheezy ?

Mise à niveau minimale du système => upgrade ?
Complète => dist-upgrade ?
full-upgrade ?

[quote=“BelZéButh”][quote=“®om”]
Ah, je pense que tu t’approches du problème. Je ne me rappelais plus que j’étais pas en full wheezy sur cette machine.
[/quote]

Je ne suis pas sur de comprendre cette dernière.[/quote]

J’avais bien installé une wheezy, mais j’avais rajouté squeeze dans les dépôts pour avoir un vieux paquet (je ne me rappelle plus quoi) et j’avais rajouté sid et experimental pour un ou deux paquets. D’où “je ne suis pas en full wheezy”.

$ uname -a && lsb_release -a Linux work 3.2.0-4-amd64 #1 SMP Debian 3.2.46-1 x86_64 GNU/Linux No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 7.1 (wheezy) Release: 7.1 Codename: wheezy

[quote=“BelZéButh”]Salut,

Ne serait tu pas en Squeeze ? Ou le cul entre les deux ?

Avec à la clé un sources.list/sources.list.d/preferences bancale …

$ aptitude -s install libncurses5-dev:i386 Les NOUVEAUX paquets suivants vont être installés : libncurses5-dev libtinfo-dev{a} 0 paquets mis à jour, 2 nouvellement installés, 0 à enlever et 9 non mis à jour. Il est nécessaire de télécharger 306 ko d'archives. Après dépaquetage, 1 145 ko seront utilisés. Voulez-vous continuer ? [Y/n/?][/quote]

Non il me semble au contraire voir des version de Jessie voir du sid et de Wheezy mélanger dans le rapport d’aptitude.

Utilisant du multiarch sur mon portable récemment réinstallé en Unstable j’ai déjà eu à faire des bricole pour faire fonctionner des paquets i386 sur de l’amd64.

Quel paquets cherche-tu à installer, que te renvoie (sans installer bien entendu) un :

Il n’y a rien (pour quelques mois encore) de bloquant dans le fait de maintenir Squeeze dans ton sources.list.

$ acp libncurses5-dev libncurses5-dev: Installé : (aucun) Candidat : 5.9-10 Table de version : 5.9+20130608-1 0 97 http://ftp.fr.debian.org/debian/ testing/main i386 Packages 95 http://ftp.fr.debian.org/debian/ unstable/main i386 Packages 5.9-10 0 990 http://ftp.fr.debian.org/debian/ stable/main i386 Packages 5.7+20100313-5 0 500 http://ftp.fr.debian.org/debian/ oldstable/main i386 Packages

Et comment !!! :033

$ acp libc6 libc6: Installé : 2.13-38 Candidat : 2.13-38 Table de version : 2.17-92 0 97 http://ftp.fr.debian.org/debian/ testing/main i386 Packages 95 http://ftp.fr.debian.org/debian/ unstable/main i386 Packages *** 2.13-38 0 990 http://ftp.fr.debian.org/debian/ stable/main i386 Packages 100 /var/lib/dpkg/status 2.11.3-4 0 500 http://ftp.fr.debian.org/debian/ oldstable/main i386 Packages

:naughty: :075

:whistle:

J’essaie d’installer le nécessaire pour compiler Android :
source.android.com/source/initia … buntu-1204

[quote=“Clochette”]que te renvoie (sans installer bien entendu) un :

$ sudo aptitude install -f Les paquets suivants seront ENLEVÉS : audacity-data{u} browser-plugin-gnash{u} erlang-asn1{u} erlang-base{u} erlang-crypto{u} erlang-inets{u} erlang-mnesia{u} erlang-odbc{u} erlang-public-key{u} erlang-runtime-tools{u} erlang-ssl{u} erlang-syntax-tools{u} gcc-4.4-base-armel-cross{u} gnash{u} gnash-common{u} libarpack2{u} libavahi-common-data:i386{u} libavahi-gobject0{u} libboost-thread1.49.0{u} libcamd2.2.0{u} libccolamd2.7.1{u} libcholmod1.7.1{u} libconfuse-common{u} libconfuse0{u} libcxsparse2.2.3{u} libdb4o8.0-cil{u} libdbus-glib1.0-cil{u} libdbus1.0-cil{u} libdns81{u} libflac++6{u} libfltk1.1{u} libgdiplus{u} libgl2ps0{u} libglade2.0-cil{u} libglpk0{u} libgmp3c2{u} libgraphicsmagick++3{u} libgraphicsmagick3{u} libgtk2.0-cil{u} libhdf5-7{u} libhippocanvas-1-0{u} libibverbs1{u} libisc83{u} liblapack3gf{u} liblinebreak2{u} liblockfile1{u} liblog4net1.2-cil{u} libmaven-archiver-java{u} libmaven-clean-plugin-java{u} libmaven-compiler-plugin-java{u} libmaven-dependency-tree-java{u} libmaven-file-management-java{u} libmaven-filtering-java{u} libmaven-install-plugin-java{u} libmaven-jar-plugin-java{u} libmaven-resources-plugin-java{u} libmaven-shade-plugin-java{u} libmaven-shared-io-java{u} libmission-control-plugins0{u} libmono-cairo4.0-cil{u} libmono-data-tds4.0-cil{u} libmono-posix4.0-cil{u} libmono-sharpzip4.84-cil{u} libmono-sqlite4.0-cil{u} libmono-system-core4.0-cil{u} libmono-system-data4.0-cil{u} libmono-system-drawing4.0-cil{u} libmono-system-enterpriseservices4.0-cil{u} libmono-system-transactions4.0-cil{u} libmono-system-web-applicationservices4.0-cil{u} libmono-system-web-services4.0-cil{u} libmono-system-web4.0-cil{u} libmono-web4.0-cil{u} libmono-zeroconf1.0-cil{u} libmozjs17d{u} libmozjs19d{u} libmozjs20d{u} libnini1.1-cil{u} libnuma1{u} liboctave1{u} libodbc1{u} libopenmpi1.3{u} libotr2{u} libparpack2{u} libplexus-compiler-java{u} libplexus-digest-java{u} libportsmf0{u} libqhull5{u} libqrupdate1{u} libsbsms10{u} libsctp1{u} libtaglib2.0-cil{u} libtelepathy-glib0{u} libtorque2{u} libvamp-hostsdk3{u} libzlcore-data{u} libzlcore0.12{u} libzltext-data{u} libzltext0.12{u} libzlui-qt4{u} lksctp-tools{u} menu-xdg{u} octave-common{u} python-box2d{u} python-cjson{u} python-decorator{u} python-elements{u} python-hippocanvas{u} python-keybinder{u} python-rsvg{u} python-simplejson{u} python-telepathy{u} python-webkit{u} python-wnck{u} python-xklavier{u} telepathy-gabble{u} telepathy-mission-control-5{u} telepathy-salut{u} turtleart{u} xulrunner-10.0{u} xulrunner-17.0{u} xulrunner-19.0{u} xulrunner-20.0{u} 0 paquets mis à jour, 0 nouvellement installés, 123 à enlever et 1 non mis à jour. Il est nécessaire de télécharger 0 o d'archives. Après dépaquetage, 266 Mo seront libérés. Voulez-vous continuer ? [Y/n/?]

[quote=“BelZéButh”][quote=“Clochette”]
Non il me semble au contraire voir des version de Jessie voir du sid et de Wheezy mélanger dans le rapport d’aptitude.
[/quote]

Et comment !!! :033

$ acp libc6 libc6: Installé : 2.13-38 Candidat : 2.13-38 Table de version : 2.17-92 0 97 http://ftp.fr.debian.org/debian/ testing/main i386 Packages 95 http://ftp.fr.debian.org/debian/ unstable/main i386 Packages *** 2.13-38 0 990 http://ftp.fr.debian.org/debian/ stable/main i386 Packages 100 /var/lib/dpkg/status 2.11.3-4 0 500 http://ftp.fr.debian.org/debian/ oldstable/main i386 Packages
[/quote]

Ouch, ah oui effectivement.

Peut-être que je devrais tout repasser en wheezy (en utilisant une priorité de 1001) ?
Ça ne risque pas de poser trop de problèmes de revenir en arrière ?

[quote=“®om”]acp libc6
libc6:
Installé : 2.13-38
Candidat : 2.13-38[/quote]

Hou la là !! :118

[quote=“BelZéButh”][quote=“®om”]acp libc6
libc6:
Installé : 2.13-38
Candidat : 2.13-38[/quote]

Hou la là !! :118[/quote]
Tu te cites toi-même en m’attribuant la citation :wink:

Chez moi, j’ai ça :

$ apt-cache policy libc6 libc6: Installé : 2.17-3 Candidat : 2.17-3 Table de version : *** 2.17-3 0 100 /var/lib/dpkg/status 2.13-38 0 500 http://ftp.fr.debian.org/debian/ wheezy/main amd64 Packages
(ce qui n’est pas correct, je te l’accorde).

[quote=“®om”]Peut-être que je devrais tout repasser en wheezy (en utilisant une priorité de 1001) ?
Ça ne risque pas de poser trop de problèmes de revenir en arrière ?[/quote]

T’est tu munis, (toi aussi), d’une paire de bretelles XXL … :005

Tu M’étonnes !!

Et … C’est pas gagné !

Des sauvegardes ? => Viables ! :033

Il te faut creuser du côte de libc6, Impérativement !!!

Le pourquoi du comment :

[quote=“®om”]$ acp libc6
libc6:
Installé : 2.13-38
Candidat : 2.13-38[/quote]

Avant tout autre chose !

[quote=“BelZéButh”][quote=“®om”]Peut-être que je devrais tout repasser en wheezy (en utilisant une priorité de 1001) ?
Ça ne risque pas de poser trop de problèmes de revenir en arrière ?[/quote]

T’est tu munis, (toi aussi), d’une paire de bretelles XXL … :005 [/quote]
C’est plus prudent de tout passer en sid ?