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:
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)
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.

L'ajout des librairies statique pour l'édition des liens est elle correctement configurée dans le makefile?

En vous remerciant pour votre aide,