Ld.so.conf.d

je suis encore intrigué par les différentes possibilités entre les differentes version de linux…

j’ai suivi un how-to qui m’indiquait de rajouter le lien /usr/local/lib dans un fichier .conf contenu par ld.so.conf.d et de lancer la commande ldconfig.

or visiblement en relancant ldconfig -v, mes librairies de /usr/local/lib ne sont pas prises en compte.
( de même les libraires x86_64 qui sont indiqué par un autre fichier .conf dans ce même repertoire ).

je suis tombé sur un post sur le net qui précise que pour Debian, il n’y a qu’un seul fichier ld.so.conf… et effectivement les paths qui y sont précisés sont eux pris en compte.
mais je suis intrigué… parce que le directory ld.so.conf.d a été installé par par ma distrib etch - en tout cas je me rappelle pas l’avoir créede mes propres mains…

est ce le genre d’incohérences à remonter à Debian, est ce normal ?
j’avoue que je préfère la méthode du ld.so.conf.d qui permet de séparer l’influence de chaque besoin en librairies.

y’a t’il une commande que je ne connaisse pas qui prenne en compte le repertoire ld.so.conf.d ?

( y’a beaucoup de commandes que je ne connais pas encore… genre grep machin chose et |… là va falloir que je me penche dessus à l’occasion aussi )

bon pour l’instant je vais me contenter de ld.so.conf… mais bon… je pensais que c’était plus propre. ( je chippote certainement, je n’en doute pas)

:blush:

y’a peut etre la commande ldconfig -f xxx
mais j’ai pas réussi à bien l’utiliser…

il m’a pris en compte qu’un seul des fichiers contenu dans ld.so.conf.d

salut,
sinon au moment de la compil d’un programme il suffit de lui indiquer le chemins des librairies à utiliser.

ça dépend de ton programme si c’est bien ce que tu cherche à faire ?

CPPFLAGS pour les includes et LDFLAGS pour les libraries

bah il semble bien qeu ce soit ce que Eclipse passe à g++ au moment du build :

pour la compile : -I/usr/local/include/dbxml -I/usr/local/include/dbxml/dbxml -O0 -g3 -Wall -c -fmessage-length=0

pour le link : -L/usr/local/lib/dbxml

cependant à l’execution, il n’allait visiblement pas chercher dans /usr/local/lib/dbxml
et me sortait qu’il ne trouvait pas la librairie berkeleydb.

tout va bien depuis que j’ai fait ldconfig avec modification du ld.so.conf.

question bête, le -R /usr/local/lib, c’est pour permettre une recherche recursive sur tous les sous repertoire ? j’ai pas encore trouvé comment mettre ce flag sous eclipse.

Le ld.so.conf est utiliser pour rajouter le chemin vers des librairies partagées et le ldconfig sert à le mettre à jour.
(Le système va relire le fichier ld.so.conf)
le -R est pour le récursif.
je ne connais pas eclipse, je ne sai spas comment faire avec ce programme.
Normalement il y aun fichier install ou readme qui doit expliquer ça.