Bonsoir,

dite est ce que quelqu'un a une idée d'ou l'erreur peut provenir... J'ai déjà bien vérifier mon makefile et que j'utiliser bien g++ mai s là je comprend vraiment plus...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 g++ -o main.o MyImage.o MyImagePGM.o 
/usr/lib/gcc/i486-linux-gnu/4.0.2/../../../../lib/crt1.o: dans la fonction « _start »:
../sysdeps/i386/elf/start.S:115: référence indéfinie vers « main »
MyImagePGM.o: dans la fonction « MyImagePGM::MyImagePGM(char*)»:
MyImagePGM.cpp:(.text+0x17): référence indéfinie vers « vtable for MyImagePGM»
MyImagePGM.o: dans la fonction « MyImagePGM::MyImagePGM(char*)»:
MyImagePGM.cpp:(.text+0x21f): référence indéfinie vers « vtable for MyImagePGM»
collect2: ld returned 1 exit status
Le 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
XLIBS = -L/usr/X11R6/lib/  -lX11 -lXext
GLLIBS = -lglut -lGL -lGLU -lm
 
CC=g++
CFLAGS=-Wall -ansi
FLAGS=-Wall -ansi
 
MYIMAGE_H=MyImage.h
MYIMAGEPGM_H=MyImagePGM.h $(MYIMAGE_H)
MYIMAGE_CPP= $(MYIMAGE_H) $(CONSTANT)
MYIMAGEPGM_CPP= $(MYIMAGEPGM_H) $(MYIMAGE_H) $(CONSTANT)
MAIN_CPP= $(MYIMAGEPGM_H)
 
 
main : main.o MyImagePGM.o MyImage.o
    $(CC) -o ./$@ $^ $(LDFLAGS) $(GLLIBS) $(XLIBS)
 
main.o : main.cpp $(MAIN_CPP)
    $(CC) -o $@ -c $< $(CFLAGS)
 
MyImage.o : MyImage.cpp $(MYIMAGE_CPP)
    $(CC) -o $@ -c $< $(CFLAGS)
 
MyImagePGM.o : MyImagePGM.cpp $(MYIMAGEPGM_CPP)
    $(CC) -o $@ -c $< $(CFLAGS)
 
clean:
    @rm -f *.o *~