Makefile相关规则

定义变量的方法

(1)变量名=变量值           递归变量展开(几个变量共享一个值)         //不常用

(2)变量名:=变量值       简单变量展开                                                     //通常采用的形式


常用的变量

$@ : 当前规则的目标文件

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

$^  :  当前规则的所有依赖文件,以逗号分隔

$? :   规则中日期新于目标文件中的所有的相关文件列表,逗号分隔

$(@D) : 目标文件的目录名部分

$(@F) : 目标文件的文件名部分


隐含规则 :*.o 文件自动依赖*.c 或*.cc文件

OBJS:=main.o fun.o

CFLAGS:=-Wal -O2 -g

main.exe:$(OBJS)

        gcc $^ -o $@


模式规则:通过匹配模式找字符串,%匹配1或多个任意字符串

%.o:%.c  任何目标文件的依赖文件是与目标文件同名的并且拓展为.c的文件

OBJS:=main.o fun.o

CFLAGS:=-Wal -O2 -g

main.exe:$(OBJS)

        gcc $^ -o $@

%.o:%.c

       gcc -o $@  -c $^


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值