Make工程管理器
1.Make工程管理器的优越性:
(1)使用 GNU 的 make 工具能够比较容易的构建一个属于你自己的工程,整个工程的编译只需要一个命令就可以完成编译、连接以至于最后的执行;(只需要一个make命令就可以完成需要对整个工程进行的操作,按Makefile中的代码自动编译,使用方便)
(2)在编译较多文件的项目中,如果仅仅一个源文件改变了,make会自动找到需要更新的目标进行编译和make, 也就是实现增量编译。就是能够根据程序中模块的修改情况,自动判断应该对那些模块重新编译,从而保证软件是由最新的模块构成。(仅仅对更新过的文件进行编译,没有修改则不再编译,极大地提高了编译效率)
2.Makefile基本介绍:
make工程管理器完全根据Makefile文件中的编译规则命令进行工作。
(1)Makefile文件由以下三项基本内容组成:
·需要生成的目标文件(target file)
·生成目标文件所需要的依赖文件(dependency file)
·生成目标文件的编译规则命令行(command)
这三项内容按如下格式进行组织:
target file:dependency file
command
(2)书写规则:
hello: hello.o
gcc hello.o –o hello
hello.o:hello.c
gcc –c hello.c
(3)Make工程管理器的编译过程:
①输入make命令,Make工程管理器会在当前目录下读取Makefile文件;
②查找Makefile文件中的第一个目标文件,该文件也是Make工程管理器本次编译任务的最终目标;
③把目标文件hello的依赖文件当做目标文件进行依赖规则检查,这是一个递归的检查过程。Make会根据以下三种情况进行处理:
·