Bonjour,

Je débute avec les makefiles aussi j'ai récupéré un exemple
d'un tutorial que j'ai réadapté. Celà donne ceci:
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
29
30
31
 
SRC = main.cpp drawbox.cpp hrzscrlbr.cpp vrtscrlbr.cpp \
      main.h drawbox.h hrzscrlbr.h vrtscrlbr.h
 
OBJ = $(SRC:.cpp=.o)
 
EXE = scrollbar.exe
 
CC = g++
 
CFLAGS = -Wall 
 
LFLAGS = -mwindows -lfltk -lole32 -luuid -lcomctl32 -lwsock32 -lm
 
%.o: %.cpp *.h
	$(CC) $(CFLAGS) -c $(<) -o $(@)
 
all: compile
 
compile: $(EXE)
 
 
$(EXE): $(OBJ)
	$(CC) $(OBJ) $(LFLAGS) -o $(EXE)
 
 
strip: $(EXE)
	strip --strip-all $(EXE)
 
clean:
	del $(OBJ)
Le programme se compile normalement et tout semble fonctionner.
Mais le truc que je n'arrive pas a assimiler c'est la règle clean.
Partout je lis que ça supprime les fichiers objet sauf que :

1) Chez moi ça marche pas. J'ai beau taper "make" ou "make clean", les
fichiers objets sont toujours présents dans le répertoire.

2) Je ne comprend pas le but de l'effacement des fichier objets. Comment
va faire make ensuite pour savoir quel fichier doit être recompilé ou pas
s'il n'a plus le fichier objet pour comparer ?

Voilà, pardon pour la naïveté de ma question mais si quelqu'un
pouvait éclairer ma lanterne.


Merci