Je suis assis sur une machine OpenSuse 11.1 x64 et j'ai un module qui utilise sigC++. Lors de la liaison comme ceci:Impossible de trouver la bibliothèque installée
g++ [a lot of o's, L's and l's] -lsigc-2.0
Je reçois
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: cannot find -lsigc-2.0
Cependant la bibliothèque est là.
Dans le système de fichiers:
$ sudo find/-name "libsigc-2.0*"
/usr/lib64/libsigc-2.0.so.0.0.0
/usr/lib64/libsigc-2.0.so.0
/usr/lib64/libsigc-2.0.so
Dans ld.so.conf J'ai:
/usr/lib64
Et lors de l'appel ldconfig:
$ ldconfig -v | grep sigc
libsigc-2.0.so.0 -> libsigc-2.0.so.0.0.0
Pourquoi?
Je viens de réaliser que ldconfig ne libère pas libsigc-2.0.so mais seulement libsigc-2.0.so.0. Les deux sont des liens symboliques vers libsigc-2.0.so.0.0.0 mais pourquoi seul le lien .0 est-il traité par ldconfig? – GeeF