Bonjour,
j'essaie de faire un Makefile qui compile (séparément) tous les fichiers sources contenus dans le dossier courant et qui déplace les executables obtenus dans un autre dossier (ici ../../bin)
Evidement, je souhaite que la compilation n'ai lieu que pour les sources dont les binaires sont obsolètes par rapport au code source.
Initialement je laissais les binaires dans le dossier courant, et tout fonctionnait parfaitement.
Maintenant que j'ai modifié mon makefile en changeant la dépendance pour la compilation:
en
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 %: %.cc # compile
le makefile fait n'importe quoi et surtout lance la compilation avec g++ alors qu'il n'en est fait nulle part mention dans le makefile !!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 %: $(BIN_DIR)/% $(BIN_DIR)/%: %.cc # compile
Il l'invente littéralement...
Mon makefile pour que ce soit plus clair:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 BIN_DIR = ../../bin SRC=$(wildcard *.cc) OP=$(SRC:.cc=) all: $(OP) %: $(BIN_DIR)/% $(BIN_DIR)/%: %.cc # Ici je mettrais la compilation et le déplacement dans BIN_DIR
Partager