Maison >développement back-end >C++ >Comment créer un Makefile C simple pour un projet à fichier unique avec des dépendances externes ?
Comment créer un Makefile C SIMPLE
Ce guide fournit une approche simple pour créer un Makefile pour un projet C avec un minimum de dépendances.
Problème :
Vous devez créer un Makefile pour un projet avec un seul fichier, a3driver.cpp, qui importe une classe depuis "/user/cse232/Examples/example32.sequence.cpp". Le but est de générer un exécutable nommé a3a.exe.
Solution :
1. Créer un Makefile :
Créez un fichier nommé Makefile dans le répertoire du projet.
2. Définir des variables :
Commencez par définir les variables qui seront utilisées dans tout le Makefile :
CC = g++ CFLAGS = -g LDFLAGS = -g LDLIBS = -lstdc++ -lm
3. Spécifiez les cibles :
Ensuite, définissez les cibles du projet :
all: a3a.exe a3a.exe: a3driver.o example32.sequence.o a3driver.o: a3driver.cpp example32.sequence.o: example32.sequence.cpp
4. Définir les dépendances :
Définir les dépendances pour chaque cible :
5. Définir des règles :
Spécifiez les commandes qui seront exécutées pour chaque cible et ses dépendances :
a3driver.o: $(CC) $(CFLAGS) -c a3driver.cpp example32.sequence.o: $(CC) $(CFLAGS) -c example32.sequence.cpp a3a.exe: a3driver.o example32.sequence.o $(CC) $(LDFLAGS) -o a3a.exe a3driver.o example32.sequence.o $(LDLIBS)
6. Définir une cible propre (facultatif) :
Vous pouvez également définir une cible propre pour supprimer tous les artefacts de build :
clean: rm -f a3driver.o example32.sequence.o a3a.exe
7. Exécutez le Makefile :
Pour construire le projet, exécutez make à partir de la ligne de commande. Cela créera l'exécutable a3a.exe.
Remarque :
Étant donné que les systèmes basés sur Unix n'utilisent pas d'extensions de fichier pour les exécutables, la cible a3a.exe n'a pas une extension dans le Makefile.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!