makefile 终极模板文件。此文在手,编译我有!

来源:互联网 发布:专业软件开发学院 编辑:程序博客网 时间:2024/04/30 11:01

#. 定义目录,一般为makefile所在当前路径DIR = .#. 定义当前路径下哪些文件夹里的文件需要编译DIRS := buffer command defs display files main search utils#. 定义源文件,即哪些源文件需要编译SRCS := $(foreach dir, $(DIRS), $(wildcard $(DIR)/$(dir)/*.c))#. 定义头文件路径INCLUDE := $(foreach dir, $(DIRS), -I$(DIR)/$(dir))#. 如果.c文件不在当前路径,需要定义搜索路径#VPATH := $(foreach dir, $(DIRS), $(DIR)/$(dir))#定义中间文件路径,可执行文件路径OBJ_PATH = ./obj/PROCESS_PATH = ./bin/#. 定义最后生成的可执行文件的名称PROCESS_NAME = makefile_testGCC := gcc################################## 下面的内容一般不需要修改 #####################################. CFLAGS为gcc编译器的选项CFLAGS += $(INCLUDE)#. 增加编译告警选项,增加gdb选项CFLAGS += -Wall -gOBJ = $(wildcard $(OBJ_PATH)/*.o)$(PROCESS_NAME) : clean  make_each_part $(GCC) -o $(PROCESS_NAME) $(OBJ) mv $(PROCESS_NAME) $(PROCESS_PATH) -f @echo "make finish..." make_each_part :  @echo "make begin..." $(GCC) -c $(CFLAGS) $(SRCS) mv ./*.o $(OBJ_PATH) -fclean : @echo "clean all..." rm -rf $(OBJ_PATH)/* rm -rf $(PROCESS_PATH)/*  

1 0
原创粉丝点击