linux下make工具使用系列3

一、书写规则

规则包括两部分:依赖关系和生成方法。规则的顺序很重要,第一条规则的目标会被认为是唯一的最终目标。

二、通配符

make支持三个通配符:*、?、[……]
比如object=$(.o),则$(object)表示所有的.o的文件集合。

三、文件搜寻

1、可以设置一个轻级变量,make会到指定的目录中找文件,现在当前目录查找。
比如VPATH=src:../include
表示指定两个目录src和../include,“:”表示不同目录分隔符;

2、用vpath关键字,可以指定不同文件在不同搜索目录中
有3种使用方法
a: vpath [pattern ] [direction] ,表示为符合模式pattern的文件指定搜索目录,多个目录用空格或者冒号分隔;
b:vpath [pattern] ,表示清除符合模式pattern的文件搜索目录;
c:vapth ,表示清除所有已被设置好的文件搜索目录;

[pattern]需要使用“%”字符,表示匹配0或者多个字符,

vpath %.h ../headers

为.h的头文件指定搜索目录../headers

四、伪目标

伪目标不是一个文件,而是一个标签,“伪目标”的取名不能和文件名重名,使用.PHONY来指定一个目标为伪目标。
伪目标一般没有依赖文件,但如果想一个make生成多个目标可执行文件,则可以使用如下方式

.PHONY:all
all:prog1 prog2 prog3
prog1:prog1.c
    gcc -o prog1 prog1.c
prog2:prog2.c
    gcc -o prog2 prog2.c
prog3:prog3.c
    gcc -o prog3 prog3.c

则会生成3个可执行文件。

此外伪目标也可以依赖伪目标

.PHONY cleanall cleanobj cleandiff
cleanall:
    rm program
cleanobj:
    rm *.o
cleandif:
    rm *.diff
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值