Comment compiler et lier plusieurs fichiers .cpp en un binaire
Cet article vise à aborder la question de la compilation de plusieurs fichiers .cpp en .o objets et les relier en un seul binaire.
Configuration du Makefile
Pour ce faire, un Makefile peut être utilisé avec le contenu suivant :
SRC_DIR = ./src OBJ_DIR = ./obj SRC_FILES = $(wildcard $(SRC_DIR)/*.cpp) OBJ_FILES = $(patsubst $(SRC_DIR)/%.cpp,$(OBJ_DIR)/%.o,$(SRC_FILES)) main.exe: $(OBJ_FILES) g++ $(LDFLAGS) -o $@ $^ $(OBJ_DIR)/%.o: $(SRC_DIR)/%.cpp g++ $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $<
Explication :
Génération de graphiques de dépendances
Pour générer automatiquement des dépendances entre les fichiers source et objets, ajoutez ce qui suit au Makefile :
CXXFLAGS += -MMD -include $(OBJ_FILES:.o=.d)
Bonnes pratiques
Cette approche est couramment utilisée pour compiler et lier plusieurs fichiers C. Cependant, il est essentiel de se référer au manuel GNU Make pour des conseils supplémentaires et des options avancées.
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!