C-Quelldateien in einem Makefile kompilieren und verknüpfen
Ihr Ziel ist es, ein Makefile zu erstellen, das alle C-Quelldateien im Ordner /src kompiliert und verknüpft sie mit einer Binärdatei im Stammordner /project. So können Sie dies erreichen:
Makefile-Konfiguration
SRC_DIR := src OBJ_DIR := obj SRC_FILES := $(wildcard $(SRC_DIR)/*.cpp) OBJ_FILES := $(patsubst $(SRC_DIR)/%.cpp,$(OBJ_DIR)/%.o,$(SRC_FILES))
LDFLAGS := ... CPPFLAGS := ... CXXFLAGS := ...
main.exe: $(OBJ_FILES) g++ $(LDFLAGS) -o $@ $^
$(OBJ_DIR)/%.o: $(SRC_DIR)/%.cpp g++ $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $<
Dieses Makefile kompiliert jede Quelldatei im Verzeichnis /src in eine entsprechende .o-Datei im Verzeichnis /obj. Anschließend werden alle .o-Dateien verknüpft, um die Binärdatei main.exe im Verzeichnis /project zu erstellen.
Best Practices
Dieser Ansatz wird im Allgemeinen als gängiger Ansatz angesehen zum Kompilieren und Verknüpfen von C-Quelldateien in einem Projekt. Es sind jedoch bestimmte Best Practices zu befolgen:
Das obige ist der detaillierte Inhalt vonWie kompiliere und verknüpfe ich C-Quelldateien mithilfe eines Makefiles zu einer Binärdatei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!