makefile 终极模板文件。此文在手,编译我有!
2014-09-11 11:04
253 查看
#. 定义目录,一般为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_test GCC := gcc ################################## 下面的内容一般不需要修改 #################################### #. CFLAGS为gcc编译器的选项 CFLAGS += $(INCLUDE) #. 增加编译告警选项,增加gdb选项 CFLAGS += -Wall -g OBJ = $(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) -f clean : @echo "clean all..." rm -rf $(OBJ_PATH)/* rm -rf $(PROCESS_PATH)/*
相关文章推荐
- Makefile文件之我的常用模板编译中小型项目
- 在VC里如何用Makefile文件编译?
- 为什么C++编译器不支持模板头文件和实现代码分离的编译
- 编译proc程序可用makefile文件(转)
- 利用Makefile单独编译驱动模块文件
- QT中Makefile文件添加-fno-rtti编译参数
- oracle OCCI 在ibm服务器,用xlC编译的一个makefile文件样例
- android编译系统的makefile文件Android.mk写法
- window下通过makefile 文件编译C/C++源文件
- 项目Makefile文件模板
- android编译系统的makefile文件Android.mk写法
- 一个简单的makefile 文件模板
- Eclipse CDT中makefile文件编译路径(-I参数)
- 第10章 多模块编译链接 Makefile文件的编写
- 为什么C++编译器不支持模板头文件和实现代码分离的编译
- 两个编译2.4与2.6内核模块的Makefile 模板
- oracle OCCI 在ibm服务器,用xlC编译的一个makefile文件
- freetype 在android编译时上的一个makefile文件
- c.cpp混合编译的makefile模板
- android编译系统的makefile文件Android.mk写法