
make
jiang_2018
这个作者很懒,什么都没留下…
展开
-
gnu make项目管理(4)函数
make函数可以分成如下几类 字符串操作 文件名操作 流程控制 若干重要的杂项函数 用户自定义函数 所有函数都具有如下形式 $(function-name arg1[,argn]) function-name是函数名,接着是函数的参数,以逗号为分隔符,第一个参数的前导空格会被删除,但是后续的任何参数包括前导空格都会被保留下来。 字符串函数 filter $(filter pattern .....原创 2019-11-07 22:45:30 · 275 阅读 · 0 评论 -
gnu make项目管理(3)变量与宏
变量的赋值 = 经过递归扩展的变量 := 经过简单扩展的变量 += 追加运算符 ?= 附带条件的变量 变量扩展规则 2个阶段 1.make会读进makefile以及被引入的任何其他makefile,这时变量和规则都会被加载进入make的内部数据库,建立依存图 2.make会分析依存图并且判断需要跟新的工作目标然后执行脚本已完成所需要的更新动作。 下面例子 $(OUTPUT_DIR)/ve...原创 2019-11-07 22:45:03 · 232 阅读 · 0 评论 -
gnu make项目管理(2)规则
具体规则 以特定的文件作为工作目标和必要条件,比如: 自动变量 VPATH和vpath来指定查找目录 VPATH和vpath是环境变量,可以来告诉make c、h文件到哪里找, 有如下目录结构和test.c #=====makefile VPATH = src inc #告诉make c h文件到哪里找 INC = -Iinc #告诉gcc h文件到哪里找 test:add.o ...原创 2019-11-07 22:44:42 · 183 阅读 · 0 评论 -
gnu make项目管理(1)一个简单的makefile
前言 c源文件想要最终生成成可执行文件首需要用gcc生成中间目标文件,再由目标文件生成可执行文件。make可以执行gcc的这些命令来生成所需目标,而makefile就是告诉make按照什么样的规则来生成这些目标。 makefile基本语法 makefile文件设计时一般采用从上而下的结构,所以默认将最上面的目标作为最终目标。 target称作目标,可以出现一个或者多个 prerequisite...原创 2019-11-07 22:42:36 · 344 阅读 · 0 评论