make--makefile

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了make--makefile相关的知识,希望对你有一定的参考价值。

makefile重要的三个概念:目标 依赖关系 命令
一 make与makefile
make是一个应用程序
1.解析源程序之间的依赖关系
2.根据依赖关系自动维护编译工作
3.执行宿主操作系统中的各种命令
makefile是一个描述文件
1.定义一系列的规则来指定源文件编译的先后顺序
2.拥有特定的语法规则,支持函数定义和函数调用
3.能够直接集成操作系统的各种命令
两者之间的关系
1.makefile中的描述用于指导make程序如何完成工作,make根据makefile中的规则执行命令,最后完成编译输出
关系可以用下图表示
技术分享图片
简单的makefile示例以及打印结果
技术分享图片
在这个示例中:all是一个目标,echo "hello dandanxiaohai"是生成目标的命令
echo的命令的用处是将字符串打印到终端上,需要注意的是:命令所在的行必须是以Tab键开头

示例改动
技术分享图片
技术分享图片
从运行的结果我们可以得出
1.一个Makefile中可以定义多个目标
2.调用make命令时,得告诉它我们希望它构建的目标是什么,即要它干什么。当没有指定的具体的目标时,make将以文件中定义的第一个目标作为这次运行的目标。“第一个”目标,也被称为默认的目标
3.当make得到目标后,先找到构建目标的对应规则,然后运行规则中的命令来达到构建目标的目的。目前的Makefile中的每个规则中都只有一条命令,实际上,一个规则中可以根据需要存在多条命令
在echo前加上@可以去掉上面输出结果的第一行输出结果,使阅读起来更方便

以上是关于make--makefile的主要内容,如果未能解决你的问题,请参考以下文章