Bonjour,
J'ai écris un programme en C++. J'ai ensuite trouver un petit source en C et j'aimerai utiliser les fonctions dans ce source.
Pour cela, suffit il de le compiler avec gcc et l'option -c pour avoir un .o puis faire un g++ de tous les .o ??

C'est ce que j'ai fait, lors de l'etape de linkage, le compilateur ne retrouve pas les fontions qui sont dans mon source C
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
[...]
gcc -c -pipe -Wall -W -g  -DQT_SHARED -DQT_TABLET_SUPPORT -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -I/usr/lib/qt-3.3/mkspecs/default -I. -I. -I/usr/lib/qt-3.3/include -o interpreteur.o interpreteur.c
[...]
g++  -o lsysi AffichageOpenGL.o LS_Fl.o LS_R.o LS_phi.o LS_bois.o GestionArbre.o lectureEntree.o LS_alphabet.o LS_F.o LS_pitchDown.o LS_pitchUp.o LS_rollLeft.o LS_rollRight.o LS_turnAround.o LS_turnLeft.o LS_turnRight.o LS_vide.o main.o NewClass.o interpreteur.o Regle.o moc_AffichageOpenGL.o   -L/usr/lib/qt-3.3/lib -lglut -lqt-mt -lGLU -lGL -lXmu -lXext -lX11 -lm
main.o: In function `main':
/home/mhtrinh/travail/these1/CH_LSystem/main.cxx:109: undefined reference to `InterpreteurInit()'
/home/mhtrinh/travail/these1/CH_LSystem/main.cxx:137: undefined reference to `Calculer(char*, tagPARAM*, unsigned int, double*)'
collect2: ld returned 1 exit status
make: *** [lsysi] Error 1
Les fonctions InterpreteurInit et Calculer sont déclaré dans interpreteur.h

Merci pour votre aide