![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
makefile
makefile
Stay hungry. Stay foolish.
这个作者很懒,什么都没留下…
展开
-
6、Makefile实例
一、写Makefile中可能存在的问题 此处写一个Makefile,如下所示: 查看一下具体程序和执行make指令,看看会出现什么问题? 显然,此处的add.h文件的内容已经被修改过了,所以按道理应该是执行make指令的时候会同步的更新一下,但是却没有,这是为什么呢? 因为我们在写makefile时并没有明确.h文件和目标文件之间的依赖关系,所以接下来我们可以去改进一下这个makefile文件,在改进之前我们先了解一下会使用到的相关语法。 1、自动生成头文件依赖,用法如下: 具体原理可参考一下这篇文章原创 2020-07-31 21:30:05 · 263 阅读 · 0 评论 -
5、Makefile中的常用函数
此文编写参照《跟我一起写makefile》 一、函数的调用方法 函数调用,很像变量的使用,也是以“$”来标识的,其语法如下: $(< function > < arguments>) 这里,< function>就是函数名,make 支持的函数不多。< arguments>是函数的参数,参数间以逗号“,”分隔,而函数名和参数之间以“空格”分隔。函数调用以“$” 开头,以圆括号或花括号把函数名和参数括起。感觉很像一个变量,是不是?函数中的参数可以使用变量,为原创 2020-07-31 10:39:44 · 152 阅读 · 0 评论 -
1、初步认识makefile
此文编写主要参考韦东山老师教程和《跟我一起写makefile》 一、什么是make? –make是一个应用程序 –解析源程序之间的的依赖关系 –根据依赖关系自动维护编译工作 –执行宿主操作系统的各种命令 二、什么是makefile? –makefile 是一种描述文件 –定义一系列的规则来指定源文件编译的先后顺序 –拥有特定的语法规则,支持函数定义和函数调用 –能够直接集成操作系统中的各种命令 三、为什么需要makefile? (1)对于gcc -o test a.c b.c这条命令虽然简单,但是它完成的功原创 2020-07-23 18:01:35 · 149 阅读 · 0 评论 -
4、假想目标.PHONY
此文编写主要参考韦东山老师教程和《跟我一起写makefile》 1.我们想清除文件,我们在Makefile的结尾添加如下代码就可以了: clean: rm *.o test 1).执行make:生成第一个可执行文件。 2).执行make clean: 清除所有文件,即执行:rm *.o test。 make后面可以带上目标名,也可以不带,如果不带目标名的话它就想生成第一个规则里面的第一个目标。 2.使用Makefile 执行:make [目标] 也可以不跟目标名,若无目标默认第一个目标。我们直接执行原创 2020-07-21 19:33:56 · 421 阅读 · 0 评论 -
3、makefile中的变量和模式规则
此文编写主要参考韦东山老师教程和《跟我一起写makefile》 1、makefile中有两种变量 1)简单变量(即时变量): A := xxx # A的值即刻确定,在定义时即确定,其中#为注释。 对于即时变量使用“:=”表示,它的值在定义的时候已经被确定了 2)延时变量 B = xxx # B的值使用到时才确定 对于延时变量使用“=”表示。它只有在使用到的时候才确定,在定义/等于时并没有确定下来。 2、如何使用变量 使用变量的时候使用“$”来引用,如果不想看到命令,可以在命令的前面加上"@"符原创 2020-07-21 19:29:38 · 806 阅读 · 0 评论 -
2、makefile规则是怎样的
1、makefile的规则 在讲述这个 Makefile 之前,还是让我们先来粗略地看一看 Makefile 的规则。 target ... : prerequisites ... command ... ... (1)target 是一个目标文件,可以是 Object File,也可以是执行文件。还可以是一个标签(Label) (2)prerequisites 就是要生成 target 所需要的文件或是目标。 command 也就是 make 需要执行的命令。(...原创 2020-07-21 10:48:59 · 117 阅读 · 0 评论