Lien avec une librairie statique
Bonjour,
Je suis sous Linux. Ayant une erreur à l'exécution de mon programme pour trouver les librairies lorsque je link en dynamique, j'essaie de contourner le problème en faisant le link en statique.
Le début de mon makefile est celui-ci (généré automatiquement, je ne fais que modifier la ligne LDFLAGS:
Code:
1 2 3 4 5 6 7 8 9 10
|
CC = gcc -g
CFLAGS = -Iinclude -gstabs -I/home/...
LDFLAGS = -static -L/usr/lib -lm -L/home/...
OBJ = obj
SRC = src
etc. |
Lorsque je fais un make, j'ai perdu toutes les fonctions de maths (et probablement d autres, mais la compil s'arrête) :
Code:
1 2 3 4 5 6
|
obj/toto1.o(.text+0x683): In function `fct1':
src/toto1.c:944: undefined reference to `sqrt'
obj/toto1.o(.text+0xa45): In function `fct2':
src/toto1:1176: undefined reference to `atan2'
obj/toto1.o(.text+0xa54):src/toto1.c:1176: undefined reference to `sin' |
J ai vérifié que les fichiers libm.a et libm.so (nécessaire ?) sont bien dans /usr/lib.
Je ne vois pas où est le problème, alors si quelqu'un à une idée ?
Merci :)