Linux:makefile的使用
makefile小结:
makefile的应用:
一个简单的 Makefile 文件包含一系列的“规则”,其样式如下:
目标(target)…: 依赖(prerequiries)…
命令(command)
目标(target)通常是要生成的文件的名称
,可以是可执行文件或OBJ文件, 也可以是一个执行的动作名称,诸如‘ clean ’。
依赖是用来产生目标的材料(比如源文件),一个目标经常有几个依赖。
命令是生成目标时执行的动作,一个规则可以含有几个命令
,每个命令占一 行
。
注意:
- 每个命令行前面必须是一个 Tab 字符,即命令行第一个字符是 Tab。这是容易出错的地方。
- 通常,如果一个依赖发生了变化,就需要规则调用命令以更新或创建目标。 但是并非所有的目标都有依赖,例如,目标“ clean ”的作用是清除文件,它 有依赖。
- 规则一般是用于解释怎样和何时重建目标。make 首先调用命令处理依赖, 进而才能创建或更新目标。当然,一个规则也可以是用于解释怎样和何时执行一 个动作,即打印提示信息。
- 一个 Makefile 文件可以包含规则以外的其他文本,但一个简单的 Makefile 文件仅仅需要包含规则。虽然真正的规则比这里展示的例子复杂,但格式是完全一样的
https://developer.aliyun.com/article/1507948
思考:工作中如何提效呢?
1、脚本汇总成一行执行(没有使用环节变量方便),说白了就是简化执行的命令
2、它可以根据文件的更新实际来决定是否需要重新编译,提高编译效率
3、比如根据依赖关系进行编译,编译一个过程需要先编译好本地的sdk包,就可以使用makefile