Bonjour,
Je débute en C et j'ai un soucis d'éditions des liens au moment de la génération du binaire. J'obtiens l'erreur suivante:
"undefined reference to".
Pourtant il se trouve que les librairies statiques (*.a) ont l'air de bien être ajouté au niveau du makefile...
Voici les traces de log lorsque de l'exécution de la commande make:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 [fedora@localhost main]$ make gcc -o main.o -c main.c -W -Wall -Wno-unused -I ../evt -I ../display -I ../e2gdi -I ../evt -I ../tvml -I ../e2evt -I ../e2tvui main.c: In function 'main': main.c:14:14: warning: unused parameter 'argc' [-Wunused-parameter] int main(int argc, char **argv) ^ main.c:14:27: warning: unused parameter 'argv' [-Wunused-parameter] int main(int argc, char **argv) ^ gcc -MM -W -Wall -Wno-unused -I ../evt -I ../display -I ../e2gdi -I ../evt -I ../tvml -I ../e2evt -I ../e2tvui main.c > main.d gcc -o tv main.o -L. -le2tvui -le2evt -ltvml -ldisplay -le2gdi -levt main.o: In function `main': main.c:(.text+0x1f): undefined reference to `initTvui' collect2: error: ld returned 1 exit status make: *** [tv] Error 1 [fedora@localhost main]$
Voici le contenu de mon makefile:
Les librairies requises sont: "libe2tvui.a", "libe2evt.a", 'libtvml.a", "libdisplay.a", 'libe2gdi.a" et "libevt.a". Ces fichiers se trouvent tous dans le répertoire courant / de compilation.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 EXEC=tv INCLUDES = \ -I ../evt \ -I ../display \ -I ../e2gdi \ -I ../evt \ -I ../tvml \ -I ../e2evt \ -I ../e2tvui CFLAGS = -W -Wall -Wno-unused $(INCLUDES) all: $(EXEC) $(EXEC): main.o $(CC) -o $(EXEC) main.o -L. -le2tvui -le2evt -ltvml -ldisplay -le2gdi -levt #-lzunexit #$(CC) -o $(EXEC) main.o ./libe2evt.a ./libe2tvui.a ./libtvml.a ./libdisplay.a ./libe2gdi.a ./libevt.a %.o: %.c $(CC) -o $@ -c $< $(CFLAGS) $(CC) -MM $(CFLAGS) $*.c > $*.d clean: rm -fr *.o *.d rm -fr $(EXEC)
L'ajout des librairies statique pour l'édition des liens est elle correctement configurée dans le makefile?
En vous remerciant pour votre aide,
Partager