1.前言
在上一篇中我们已经了解到单程Makefile,并且也掌握了基本的Makefile的语法,接下来让我们更上一层楼,我们学习嵌套的Makefile,在本文中主要讲解了一些简单的认识,在下一节中我们来实操一下同学们就可以理解了
2.理解嵌套
在我们实际工作中我们更多的是运用嵌套Makefile来工作的,我们在实际工作中我们写了一个程序,我们在main函数之外写了非常多的子函数,我们将这些子函数进行封装,那么这样有个好处,我们可以随时调用这些函数,我们在用的时候只要把这些函数连接到main函数即可,我们第一个想到的应该就是按照gcc的工作原理去连接,但是这样太浪费时间,能不能有一种方式可以让我们用一个命令就可以运行整程序,这个才是我们想要的,所以嵌套Makefile出来解决这个问题了,在这里的嵌套意味着我们用总makefile控制子makefile,接下来,我们就来讲解一下嵌套。
3、嵌套流程
3.1:创建文件夹
我们在电脑的很多应用程序他们都有各种文件夹,其文件夹下的文件类型也都不相同,我们也是这样,我们要创建属于我们的文件夹,前期基本上只有四个文件夹分别为src bin obj include,src是我们放置.c文件的我们编写好的C语言文件都是在src文件夹下,同时我们也会编写属于自己的库文件.h文件,这些文件是在include文件夹下,而从src生成的.o文件送到obj文件夹中,再把obj文件夹中生成的可执行文件放到bin目录下就可以了,
mkdir src
mkdir bin
mkdir include
mkdir obj
3.2编写.c文件
我们在src文件夹下编写两个.c文件,分别为:main.c fun.c和一个库函数:list.h
将库文件移动到include文件夹下
mv list.h ../include
3.3编写总Makefile
一个有四个文件夹,那么我们在跟这四根文件夹平级的地方我们编写总Makefile,我们用总Makefile控制四个文件下的Makefile,创建完以后应该如下所示
vim makefile
src bin makefile include obj