[Précédent (date)] [Suivant (date)] [Précédent (sujet)] [Suivant (sujet)] [Index par date] [Index par sujet]

Re: installer une librairie ???



"R.Ouellette" wrote:
> 
> Il manque un peu d'infos pour bien aider...
> 
> La commande rpm -qa | grep stdc++ dans un terminal me donne :
> libstdc++3.0-devel-3.0.4-2mdk
> libstdc++2.10-2.96-0.76mdk

compat-libstdc++2.10 aurait ete un bien meilleur choix
de nom de paquetage; et devrait etre seulement etre utiliser
pour les logiciels commerciaux.

> libstdc++3.0-3.0.4-2mdk
> libstdc++2.10-devel-2.96-0.76mdk

Il faut savoir que gcc-2.90 est un alias pour gcc-3.0
sinon la librarie de stdc++ est binairement incompatible.

> On peut installer plusieurs bibliothèques de différentes versions
> normalement sans problème.

Le terme "version" est utilise ici tres librement.
Le meme packetage ne peut etre installer en meme temps
sans avoir de conflit.
  monnom-maversion
  pour libstdc++3.0-devel-3.0.4-2mdk
  nous avons 
  monnom: libstdc++3.0-devel
  maversion: 3.0.4-2mdk

> La commande locate stdc++-libc6.1-2.so.3 me donne :
> /usr/lib/libstdc++-libc6.1-2.so.3
> 
> Je sais donc que la bibliothèque est dans le répertoire /usr/lib

$ rpm -qf /usr/lib/libstdc++-libc6.1-2.so.3
aurait permis d'avoir le paquetage

> La commande ls -l /usr/lib/libstdc++-libc6* me donne :
> /usr/lib/libstdc++-libc6.1-1.so.2 -> libstdc++-libc6.2-2.so.3*

devrait etre libstdc++-2-libc6.1-*

> /usr/lib/libstdc++-libc6.1-2.so.3 ->
> /usr/lib/libstdc++-3-libc6.2-2-2.10.0.so*

tres interessant, une libc6.1 pointant sur une libc6.2
d'autant plus que la libc6.1 devrait corresprondre avec libstdc++-2
                  la libc6.2 devrait corresprondre avec libstdc++-3
                  gcc-3.1    devrait corresprondre avec libstdc++-v3

> /usr/lib/libstdc++-libc6.2-2.so.3 -> libstdc++-3-libc6.2-2-2.10.0.so*

Ce pointer fait du sens.

> Ce qui me liste les divers liens symboliques (de couleur cyan
> dans un terminal). Parfois le simple ajout d'un lien symbolique
> portant le nom de la bibliothèque recherchée et pointant sur la
> bibliothèque la plus proche (comme version) peut suffire.
> 
> Enfin, si on ajoute une bibliothèque il faut la faire reconaître
> en lançant COMME ROOT la commande
> 
> ldconfig

$ /sbin/ldconfig -p | grep libstdc++-libc6.1

> en s'assurant que le chemin de la bibliothèque apparaisse bien
> dans le fichier /etc/ld.so.conf (que l'on édite également comme
> root).

  Par default le dynamic loader regarde dans /lib qui
n'a pas besoin d'etre dnas la liste.
  La commande $ /sbin/ldconfig -p devrait confirmer.

> Voici, à titre d'exemple, le contenu de mon fichier
> /etc/ld.so.conf (Mandrake 8.2 -- KDE3 non installé)
> 
> La commande cat /etc/ld.so.conf me donne :
> 
> /usr/X11R6/lib
> /usr/lib/qt2/lib
> /lib
> /usr/lib
> /usr/local/lib
> /usr/X11R6/lib
> /usr/i386-linux-gnulibc1/lib