* make实质上是一个应用程序
* 用于解析源程序之间的依赖关系
* 根据依赖关系自动维护编译的工作
* 执行宿主操作系统的各种命令
* make命令
* make -f <file> <目标>,可简化为make <目标> 或者直接make
* Makeflile是一个描述文件
* 定义各种规则来指定源文件的编译顺序
* 有特定的语法和函数定义,支持函数定义和调用
* 能直接集成操作系统的命令
* 用于定义源程序之间的依赖关系
* 说明如何编译源文件各个源文件并生成可执行文件
* makefile用于指导make如何完成工作,make根据makefile中的规则执行命令,完成编译工作
* 语法格式
* targets(目标文件名或make需要的命令名称) : prerequisites(依赖) '\n''\t'command(命令)
*makefile依赖规则
*当目标文件名不存在是,执行对应命令
*当依赖在时间上比目标更新,执行该命令
*当依赖关系连续发生时,对比依赖链上的每一个目标
*makefile可在命令前加上@符号,使命令无回显
*makefile示例代码
hello.out all : func.o main.o //依赖可有多个,用空格隔开
gcc -o hello.out func.o main.o
func.o : func.c
gcc -o func.o -c func.c
main.o : main.c
gcc -o main.o -c main.c