Voila j'ai fais mon progrmme en c++ sous linux.
Mais j'ai voulus le compilé.

l'arborescence de mes fichiers est comme cela:

../racine
|
---objet
|
----objet.h
|
-----objet.cpp
|
----fonction1
|
-----fonction1.h
|
-----fonction1.cpp
|
|
-----fonction2
|
-------fonction2.h
|
-----fonction2.cpp
|
-------main.h
|
|
-------main.c
le code des différents fichiers:

objet.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
#include "objet.h"
.......



fonctionx.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
#include "objet.h"
......

fonctionx.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
#include "fonctionx.h"
....

main.c

main.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
#include "fonction1/fonction1.h"
#include "fonction2/fonction2.h"
note: le x peut-être remplacé par 1 ou 2.

aprés quelque recherche j'ai découvert qu'il fallait mettre le fichier objet.cpp en librairie statique.
Mais si je veux compiler fonction1.cpp il me met une erreur comme quoi il ne connait le objet.h

le make

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
g++ objet.c -o 
 
ar rcs libobjet.a objet.o
 
g++ fonction1.cpp -L -libobjet -o
 
g++ fonction2.cpp -L -libobjet -o
 
g++ main.cpp -c fonction1.o fonction2.o -L -libobjet  -c main