[C++/Makefile] Options de compilation...
Résolu
z980x
Messages postés
918
Statut
Membre
-
z980x Messages postés 918 Statut Membre -
z980x Messages postés 918 Statut Membre -
Bonour à tous,
je suis sur un projet pour lequel je souhaite une interface graphique. Pour compiler mon projet, j'utilise un makefile assez généraliste, mais pour compiler le fichier de l'interface graphique, j'ai besoin d'options supplémentaires. Ma question est donc, comment modifier mon makefile pour qu'il prenne en compte mon fichier graph.cpp en le linkant avec les librairies nécessaires.
Voici mon makefile:
et les options pour une compilation "classique" de mon fichier d'interface graphique:
Merci d'avance !
--
C'est dans ces moments là qu'on préfère Linux !
je suis sur un projet pour lequel je souhaite une interface graphique. Pour compiler mon projet, j'utilise un makefile assez généraliste, mais pour compiler le fichier de l'interface graphique, j'ai besoin d'options supplémentaires. Ma question est donc, comment modifier mon makefile pour qu'il prenne en compte mon fichier graph.cpp en le linkant avec les librairies nécessaires.
Voici mon makefile:
NOM = lapinoux override CXXFLAGS+
-Wall LDFLAGS
#Liste des objets à lies pour produire l'executable OBJETS = main.o animal.o lapin.o renard.o pile.o carte.o graph.o #Regle generale de production des objets #Regle de production de l'executable #$(REP_EXEC)/$(NOM).$(VERSION): $(OBJETS) $(NOM): $(OBJETS) $(CXX) $(LDFLAGS) $^ -o $@ clean: @$(RM) *.o *~ *.*~ </pre>et les options pour une compilation "classique" de mon fichier d'interface graphique:
g++ -o GRAPH graph.cpp `sdl-config --cflags --libs` -lSDL_ttf -lfreetype
Merci d'avance !
--
C'est dans ces moments là qu'on préfère Linux !
2 réponses
-
Tu peux par exemple faire un truc du genre
SDLFLAGS=`sdl-config --cflags --libs` -lSDL_ttf -lfreetype CXXFLAGS= $(SDLFLAGS) -W -Wall $(NOM): $(OBJETS) $(CXX) $(LDFLAGS) $(CXXFLAGS) $^ -o $@
Bonne chance -
Je te remercie pour cette réponse, c'est bien ce qu'il fallait faire, néanmoins, il faut mettre le $(LDFLAGS) à la fin.
Voici donc mon makefile corrigé:NOM = lapinoux override CXXFLAGS+=-Wall LDFLAGS = `sdl-config --cflags --libs` -lSDL_ttf -lfreetype -lSDL #Liste des objets à lies pour produire l'executable OBJETS = main.o animal.o lapin.o renard.o pile.o carte.o graph.o #Regle generale de production des objets #Regle de production de l'executable #$(CXX) $(LDFLAGS) $^ -o $@ #$(REP_EXEC)/$(NOM).$(VERSION): $(OBJETS) $(NOM): $(OBJETS) $(CXX) $^ -o $@ $(LDFLAGS) clean: @$(RM) *.o *~ *.*~
Merci !