Makefile的写法


Makefile的规则:
target(目标):prerequisites(依赖)
    command(命令)
    ...

1. Common options:
    -k: keep going when an error is found
    -n: 只是显示命令,但不会执行命令
    -f <filename>: 指定makefile文件

2. phony target (伪目标):
    .PHONY clean
    clean:
        -rm *
   
3. 变量:
变量引用: $() 或 ${}
    注:要使用真实的“$”字符,那么你需要用“$$”来表示
自动化变量:
    $?:所有比目标新的依赖目标的集合。   
    $@: 表示规则中的目标文件集。在模式规则中,如果有多个目标,那么,"$@"就是匹配于目标中模式定义的集合。
    $<:依赖目标中的第一个目标名字。如果依赖目标是以模式(即"%")定义的,那么"$<"将是符合模式的一系列的文件集。注意,其是一个一个取出来的。
    $*:无后缀名的依赖
    $^:所有的依赖目标的集合。

4. 特殊字符:
    -: 忽略当前执行命令的任何错误
    @: 执行命令而不打印命令 (echo)

5. 后缀和模式:

.SUFFIXES:.c     #自定义后缀
.c.o                       #老式风格的"后缀规则"
    $(CC) $(CFLAGS) -I$(INCLUDE) -c $<
等价于:
%o:%.c               #模式
    $(CC) $(CFLAGS) -I$(INCLUDE) -c $<

引: [精华] 跟我一起写 Makefile
http://www.chinaunix.net/jh/23/408225.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值