【Arm】Makefile文件嵌套调用的实现

1、文档背景

在用Makefile进行工程管理的过程中,Makefile的嵌套调用是研发人员必须掌握的基础知识。


2、 解决的问题或者进行问题分析

本文将以一个实际案例,讲解Makefile的嵌套调用的实现。理解Makefile的嵌套调用需掌握Makefile的基本内容,如:Makefile文件的基本组成、常用的自动变量、常用的隐性规则等。


3、 如何Makefile的嵌套调用

工程的目录结构如图3-1所示:

图3-1


实现流程如下

1)、 在“math”目录下创建main.c、Makefile及mathlib子目录,Makefile的内容如图3-2所示:

图3-2


2)、在"mathlib"子目录下,创建Makefile文件及include、Add、Sub、Mul与Div子目录,Makefile文件的内容如图3-3所示:

图3-3


3)、在“Add”目录下,创建add.c及Makefile文件,Makefile文件的内容如图3-4所示:

图3-4

4)、 其他的子目录的内容与“Add”目录的内容类似。


4、通过在主目录下运行“make”与“make clean”验证Makefile的嵌套调用

1)、在“math”目录下,运行"make",然后执行目标文件,如图4-1所示:

图4-1


2)、在“math”目录下,运行"make clean",然后查看目录下的文件,如图4-2所示:

图4-2


5、讨论分析

如果需要把库文件存放在“mathlib”目录下,需要如何修改Makefile文件的内容。


6、结论

了解Makefile文件的基本组成、常用的自动变量、常用的隐性规则等,实现Makefile的嵌套调用相对来说还是比较容易的。