一、makefile
GNU make是一个命令工具,是一个用来控制软件构建过程的自动化管理工具。
Make工具通过称为Makefile的文件来完成并自动维护编译工作
Makefile是用于自动编译和链接的,一个工程有很多文件组成,
每一个文件的改变都会导致工程的重新链接,但不是所有的文件都需要重新编译
make [-f Makefile][option][target]
#make target #make #make clean (伪目标)
Hello程序的MakeFile
CC 指明编译器的宏
EXEC 表示生成的执行文件名称的宏
OBJS 目标文件列表宏
LDFLAGS 链接参数宏
All 编译主入口
Clean 清除编译结果
默认的情况下,make命令会在当前目录下按顺序找寻文件名为
“GNUmakefile”、“makefile”、“Makefile”的文件,找到了解释这个文
件。在这三个文件名中,最好使用“Makefile”这个文件名。
• 可以使用别的文件名来书写Makefile
“Make.Linux”,“Make.Solaris”
使用make的“-f”和“--file”参数运行,如:make -f Make.Linux或
make –file Make.Linux
Makefile里主要包含了五个要素:显式规则、隐含规则、
变量定义、文件指示和注释。
• 显式规则。显式规则说明了,如何生成一个或多的的目标文件。这是
由Makefile的书写者明显指出,要生成的文件,文件的依赖文件,生
成的命令。
• 隐含规则。由于我们的make有自动推导的功能,所以隐晦的规则可以
让我们比较粗糙地简略地书写Makefile,这是由make所支持的。
• 注释。Makefile中只有行注释,和UNIX的Shell脚本一样,其注释是用
“#”字符,这个就像C/C++,Java中的“//”一样。
• 在Makefile中的命令,必须要以[Tab]键开始。