Как скомпилировать и связать несколько файлов .cpp в двоичный файл
В этой статье рассматривается вопрос компиляции нескольких файлов .cpp в один .o объекты и связывание их в один двоичный файл.
Конфигурация Makefile
Для этого можно использовать Makefile со следующим содержимым:
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 $@ $<
Объяснение:
Генерация графа зависимостей
Чтобы автоматически генерировать зависимости между исходным и объектным файлами, добавьте следующее в Makefile:
CXXFLAGS = -MMD -include $(OBJ_FILES:.o=.d)
Рекомендации
Этот подход обычно используется для компиляции и связывания нескольких файлов C. Тем не менее, важно обращаться к Руководству GNU Make за дополнительными указаниями и расширенными опциями.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3