Vous pouvez aussi utiliser le makefile suivant, en modifiant le champs TARGET pour mettre le nom de vos différents programmes.
TARGETS = programme1 programme2 programme3 ########################################################## CFLAGS = -g -O2 -Wall `pkg-config --cflags MLV` LDFLAGS = `pkg-config --libs-only-other --libs-only-L MLV` LDLIBS = `pkg-config --libs-only-l MLV` all: $(TARGETS) clean: -rm -rf $(TARGETS)
Vous pouvez aussi utiliser le makefile suivant, en modifiant les champs TARGET et OBJECTS pour mettre respectivement le nom et les codes sources de votre programme.
# # Mettre ici le nom de votre programme # (il faut que dans les OBJECT il y ai un objet de même nom que celui de TARGET # TARGET= main # # Mettre ici l'ensemble des fichiers objets nécessaires aux programmes # (les fichiers peuvent se situer dans des répertoires) # OBJECTS= main.o affiche.o # # Mettre ici vos options de compilation # CFLAGS= -DDEBUG -g -Wall `pkg-config --cflags MLV` # # Mettre ici les options qui devront être passées à l'éditeur de liens # LDFLAGS = `pkg-config --libs-only-other --libs-only-L MLV` # # Mettre ici les noms des bibliothèques et leurs locations. # Par exemple (-lpthread ou -L/directory) # LDLIBS=`pkg-config --libs-only-l MLV` ############################################################################### DEPENDS=$(OBJECTS:.o=.d) INCLUDE_DEPENDS=$(foreach i,$(DEPENDS),$(wildcard $(i))) all: $(TARGET) $(TARGET): $(DEPENDS) $(OBJECTS) $(CC) -o $@ $(LDFLAGS) $(OBJECTS) $(LDLIBS) %.d:%.c $(CC) -M $(CFLAGS) -MT '$(shell echo "$<" | sed 's,\($*\)\.c,\1.o $@,' )' $< > $@ include $(INCLUDE_DEPENDS) clean: -rm -f $(TARGET) -rm -f $(OBJECTS) -rm -f $(DEPENDS)