-
来自:
- yfkiss
- (夜风)
C/C++ code
-
###################################################################### # makefile 模版 # ###################################################################### ###################项目路径和程序名称################################# DIR = $(shell pwd) BIN_DIR = $(DIR) / bin LIB_DIR = $(DIR) / lib SRC_DIR = $(DIR) / src INCLUDE_DIR = $(DIR) / include OBJ_DIR = $(DIR) / obj DEPS_DIR = $(DIR) / deps #PROGRAM = $(BIN_DIR) / test PROGRAM = $(BIN_DIR) / test ###################OBJ文件及路径############################################ EXTENSION = cpp OBJS = $(patsubst $(SRC_DIR) /% .$(EXTENSION), $(OBJ_DIR) /% .o,$(wildcard $(SRC_DIR) /* .$(EXTENSION))) DEPS=$(patsubst $(OBJ_DIR)/%.o, $(DEPS_DIR)/%.d, $(OBJS)) ###################include头文件路径################################## INCLUDE=\ -I$(INCLUDE_DIR) ###################lib文件及路径###################################### ###################编译选项及编译器################################### CC=g++ CFLAGS=-Wall -W -g LDFLAGS= ###################编译目标########################################### .PHONY: all clean rebuild all:$(OBJS) @echo $(DEPS_DIR) $(CC) -o $(PROGRAM) $(OBJS) $(LDFLAGS) $(DEPS_DIR)/%.d: $(SRC_DIR)/%.$(EXTENSION) $(CC) -MM $(INCLUDE) $(CFLAGS) $< | sed -e 1's,^,$(OBJ_DIR)/,' > $@ sinclude $(DEPS) $(OBJ_DIR)/%.o:$(SRC_DIR)/%.$(EXTENSION) $(CC) $< -o $@ -c $(CFLAGS) $(INCLUDE) rebuild: clean all clean: rm -rf $(OBJS) $(PROGRAM)
本文提供了一个详细的Makefile模板,用于C/C++项目的自动化构建过程。该模板定义了项目目录结构、源文件、对象文件及依赖文件等,并配置了编译器选项、编译规则和清理命令,有助于快速上手Makefile的编写。
312

被折叠的 条评论
为什么被折叠?



