03makefile(上)

n  基本框架:

a)         Makefile文件的命名

b)         Makefile基本规则

c)         Makefile自动化变量

d)         Makefile编译多个可执行文件

                 

3.1 Makefile文件的命名:

     Makefile最好命名为Makefile,不然的话,敲入make命令的同时,得显示指定出makefile文件名,比如:make  -f  文件名

3.2Makefile基本规则

l  TARGET:DEPENDENCES

            COMMAND

1)  目标可以是伪目标,如clean,目的只是为了执行一些操作。

设定伪目标的方法:   .PNONY: clean

2)命令的起始字符必须为TAB字符

3)基本原理:

若依赖文件列表中的任一文件的时间戳比目标文件的时间戳更新的话,敲入make命令后,COMMAND就要执行,从而生成新的目标文件。

3.3Makefile自动化变量

3.3.1自动化变量

$@: 规则的目标文件名

$<:  规则的第一个依赖文件名

$^:  规则的所有依赖文件列表

3.3.2自定义变量(简单了解即可)

自定义变量举例:CC  CFLAGS  all  BIN  OBJS  CXX  CPPFLAGS

引用方法:$(BIN)

3.4Makefile编译多个可执行文件

对今后编写测试程序较有用;

模式规则: %.o:%.c

l  一些细节知识:

#:在Makefile中做注释用。

@:在COMMAND前面加上@,可以使make命令的输出结果中不显示相应的COMMAND语句。

原文地址:https://www.cnblogs.com/xieyang/p/3919563.html