
Makefile
Makefile
魏波.
魏波
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Makefile_07:Make 的工作方式
Make 的工作方式GNU 的 make 工作时的执行步骤入下:1、读入所有的 Makefile。 2、读入被 include 的其它 Makefile。 3、初始化文件中的变量。 4、推导隐晦规则,并分析所有规则。 5、为所有的目标文件创建依赖关系链。6、根据依赖关系,决定哪些目标要重新生成。 7、执行生成命令。1-5 步为第一个阶段,6-7 为第二个阶段。第一个阶段中,如果定义的变量被使用了, make 会把其展开在使用的位置。但...原创 2021-04-10 21:51:30 · 380 阅读 · 0 评论 -
Makefile_06:如果引用其它的 Makefile
如果引用其它的 Makefile在 Makefile 使用 include 关键字可以把别的 Makefile 包含进来,被包含的文件会原模原样的放在当前文件的包含位置。include 的语法是:include <filename>(1) 在 include 前面可以有一些空字符,但是绝不能是[Tab]键开始。(2)include 和可以用一个或 多个空格隔开。比如有几个 Makefile:a.mk、b.mk、c.mk,还有一个文件...原创 2021-04-10 21:38:41 · 399 阅读 · 0 评论 -
Makefile_05:Make命令的自动推导
Make命令的自动推导GNU 的 make 很强大,它可以自动推导文件以及文件依赖关系后面的命令,于是我们就没必 要去在每一个[.o]文件后都写上类似的命令,因为,我们的 make 会自动识别,并自己推导 命令。我们的 makefile 再也不用写得这么复杂。我们的是新 的 makefile 又出炉了:objects = main.o kbd.o command.o display.o \ insert.o search.o files...原创 2021-04-10 21:02:54 · 586 阅读 · 0 评论 -
Makefile_04:Makefile变量初了解
Makefile变量初了解在上一篇文章《Makefile_03:Makefile介绍》我们可以看到[.o]文件的字符串被重复了两次,如果我们的工程需要加入一个新的[.o] 文件,如果 makefile 变得复杂,那么我们就有可能会忘掉一个需要加入的地方,而导致编译失败。所以为了 makefile 的易维护, 在 makefile 中我们可以使用变量。makefile 的变量也就是一个字符串,理解成 C 语言中的 宏可能会更好。比如,我们声明一个变量,叫 obje...原创 2021-04-10 20:55:30 · 277 阅读 · 0 评论 -
Makefile_03:Makefile介绍(作用、例子、原理)
Makefile 介绍make 命令执行时,需要一个 Makefile 文件,以告诉 make 命令需要怎么样的去编译和链接程序。 比如我们的工程有 8 个 C 文件和 3 个头文件,我们要写一个 Makefile 来告诉 make 命令如何编译和链接这几个文件。我们的规则是:1)如果这个工程没有编译过,那么我们的所有 C 文件都要编译并被链接。2)如果这个工程的某几个 C 文件被修改,那么我们只编译被修改的 C 文件,并链接目标程。3)...原创 2021-04-10 19:25:37 · 1292 阅读 · 0 评论 -
Makefile_02:程序的编译和链接
程序的编译和链接1、编译时,编译器会检查代码语法正确、函数与变量的声明的正确性。2、链接时,主要是链接函数和全局变量,链接器会在所有的 Object File 中找寻函数的实现。3、在大多数时候,由于源文件太多,编译生成的中间目标文件太多,而在链接时需要明显地指出中间目标文件名,这对于编译很不方便,所以,我们要给中间目标文件打个包,在 Windows 下这种包叫“库文件”(Library File),也就是 .lib 文件,在 UNIX下,...原创 2021-04-10 19:18:52 · 404 阅读 · 0 评论 -
Makefile_01:什么是Makefile?
什么是Makefile?1、makefile 关系到了整个工程的编译规则,他定义了一系列的规则来指定哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译。2、makefile 的好处是自动化编译,一旦写好,只需要一个 make 命令,整个工程完全自动编译,极大的提高了软件开发的效率。3、make 是一个命令工具,是一个解释 makefile 中指令的命令工具。...原创 2021-04-10 19:16:49 · 320 阅读 · 0 评论