So kompilieren und verknüpfen Sie mehrere .cpp-Dateien zu einer Binärdatei
Dieser Artikel befasst sich mit der Frage des Kompilierens mehrerer .cpp-Dateien .o-Objekte und deren Verknüpfung zu einer einzelnen Binärdatei.
Makefile-Konfiguration
Um dies zu erreichen, kann ein Makefile mit den folgenden Inhalten verwendet werden:
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 $@ $<
Erklärung:
Erstellung von Abhängigkeitsdiagrammen
Um automatisch Abhängigkeiten zwischen Quell- und Objektdateien zu generieren, fügen Sie Folgendes zum Makefile hinzu:
CXXFLAGS += -MMD -include $(OBJ_FILES:.o=.d)
Best Practices
Dieser Ansatz wird häufig zum Kompilieren und Verknüpfen mehrerer C-Dateien verwendet. Es ist jedoch wichtig, das GNU Make-Handbuch zu Rate zu ziehen, um weitere Anleitungen und erweiterte Optionen zu erhalten.
Das obige ist der detaillierte Inhalt vonWie kompiliere und verknüpfe ich mehrere CPP-Dateien zu einer einzigen Binärdatei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!