文章目录
1. 什么是make
make是一个应用程序:
- 解析源程序之间的依赖性
- 根据依赖关系自动维护编译工作
- 执行宿主操作系统中的各种命令
2. 什么是makefile
makefile是一个描述文件:
- 定义一些列的规则来指定源文件编译的先后顺序
- 拥有特定的语法规则,支持函数定义和函数调用
- 能够直接集成操作系统中的各种命令
3. make和makefile之间的关系
- makefile 中的描述用于指导make 程序如何完成工作
- make 根据makefile 中的规则执行命令,最后完成编译输出
4. make和makefile示例
4.1 最简答的mekefile示例
hello:
echo "hello makefile"
# hello 是目标
# echo "hello makefile" 是为实现目标所需执行的命令,每条命令前都严格有一个 \t(tab键)
4.2 make程序的使用示例
- 将上述makefile文件保存为 mf.txt
- 在 mf.txt 同级目录下执行 make -f mf.txt hello (功能说明:以hello 关键字作为目标查找mf.txt文件,并执行 hello 处的命令)
4.3 make 程序的简写
将 mf.txt 文件改名为 makefile 或者 Makefile,执行 make hello (功能说明:以 hello 关键字作为目标查找 makefile 或者 Makefile 文件,并执行 hello 处的命令)
直接执行 make (功能说明:查找 makefile 或者 Makefile 中的最顶层目标,并执行最顶层目标的命令)
5. 总结
- make 只是一个特殊功能的应用程序
- meke 用于根据指定的目标执行相应的命令
- makefile 用于定义目标的实现和实现目标所需的命令
- makefile 有特定的语法规则,支持函数定义和调用