【Linux】makefile

5 篇文章 0 订阅

【Linux】makefile

VERSION1

目标 :依赖

规则 命令

  1 #              VERSION1                                                            
  2 #-----------------------------------------------------
  3 #app: main.c add.c sub.c div.c mul.c
  4 #   gcc -o app -I ../include/ main.c add.c sub.c div.c mul.c


VERSION2

  8 #             VERSTON2
  9 #get all  .c files  makefile默认处理第一个目标 wildcard通配符   
 10 SrcFiles=$(wildcard *.c)
 11 #all.c files -> .ofiles
 12 objFiles=$(patsubst %.c,%.o,$(SrcFiles))
 13 
 14 all:app
 15 #//目标文件用法$(var) $@代表目标 $^ 全部依赖 $<第一个依赖 $?第一个变化的依赖
 16 app:$(objFiles)
 17     gcc -o $@  -I ../include/ $(objFiles)
 18 
 19 
 20 %.o:%.c
 21     gcc -c $< -I ../include/ -o $@
 22 #模式匹配规则 $@,$<只能在makefile 中使用 ,-o $@可不加(明确指定生成xx.o文件,-c 也生成.o文件)
 23 #依赖 规则可以不写  echo 显示该条指令 ( make test测试)
 24 test:
 25     @echo $(SrcFiles)
 26     @echo $(objFiles)
 27 
 28 #定义伪目标,防止有歧义(clean all伪目标只出现在makefile中)
 29 .PHONY:clean all
 30 
 31 #清理 .o和目标文件 前面加@ 不显示该条命令 前面加- 如果该条指令报错继续执行
 32 clean:
 33     -@rm -f *.o 
 34     -@rm -f app 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值