J'ai une librairie c++ générée par le compilateur matlab appelée mettons essai
Je cherche a faire un programme c++ appelant cette librairie, je fait :
Code :
- g++ main.cpp -I/opt/matlab/extern/include/cpp -I/opt/matlab/extern/include -L. -lessai
|
Et je recois :
Code :
- /usr/bin/ld: cannot find -lessai
- collect2: ld a retourné 1 code d'état d'exécution
|
Pourtant les infos que j'ai pu trouver sur le net précisent que une syntaxe correcte ! Je précise que (pour le moment, juste pour éliminer toutes les sources possibles d'ereur) j'ai main.cpp et essai (ma lib) qui sont dans le meme répertoire. Le .h de la lib l'est aussi !
Une idée de comment faire ?
[edit] Maintenant que tout marche... lorsque je lance mon programme, il cherche la librairie linkée dans le répertoire "en dur" (pour moi src/lib/libessai.a)
Or, si je distribue ce programme (c'est pas le cas avant un bout mais ca viendra) ce répertoire ne sera pas forcément le meme... Commen la recherche des librairies se fait elle ? En fonction de la variable PATH (ou LD_LIBRARY_PATH sous linux ) ?
Merci pour ce petit éclarage
Message édité par guepe le 02-11-2007 à 15:47:46
---------------
Un blog qu'il est bien