Linux项目自动化构建工具 make/Makefile
介绍
- 一个工程中的源文件非常庞大,其按类型,功能、模块分别放在若干个目录中,makefile定义了一系列的规则来制定,那个文件需要先编译,那些文件需要重新编译。甚至于进行更加复杂的工作。
- makefile最大的好处就是能够“自动化编译”,一些写好makefile,只需要一个make指令。整个工程就能够自动编译,极大地提高了开发效率。
- make是一个命令工具,是一个解释makefile中的指令的命令工具,一般来说,大多数的IDE都有这个命令,比如:visual c++的nmake,linux下GNU的make。
make是一条指令,makefile是一个文件,搭配使用完成项目自动化构建。
示例:
在源文件目录下创建一个makefile 文件
保存退出,第二行的开头必须以 tab 开始。
执行make,自动创建了可执行文件。
添加清理,
执行make clean ,清理目标文件。
.PHONY 定义的伪目标总是可执行的。
make不可多次执行。
但如果给第一条设置为伪目标,也可多次执行。
但一般不会将其设置为伪目标,因为编译是需要成本的。