Makefile规则

规则
目标:依赖
命令
led.bin:led.o
arm-linux-ld -Tled.lds -o led.elf led.o

.PHONY:clean
clean:
rm *-o led.elf led.bin(只有命令,没有依赖,.PHONY:说明它是伪目标)
makefile里面的第一条规则的目标就是最终目标
使用变量前:
app1: app1.o func1.o func2.o
gcc app1.o func1.o func2.o -o app1
app2: app2.o func1.o func2.o
gcc app2.o func1.o func2.o -o app2
使用变量后:
obj=func1.o func2.o
app1: app1.o (obj)gccapp1.o(obj) -o app1
app2: app2.o (obj)gccapp2.o(obj) -o app2

在makefile中,用户除了可以自己定义变量外,还可以使用

存在系统已经定义好的默认变量。

$^:代表所有的依赖文件
$@:代表目标
$<:代表第一个依赖文件

使用前:
led.o : led.S
arm-linux-gcc -g –o led.o -c led.S
使用后:
led.o : led.S
arm-linux-gcc -g –o @c^

%

%.o : %.S
arm-none-linux-gnueabi-gcc -o @< -c -nostdlib
取代相同形式的所有文件

去回显@

%.o : %.S
@arm-none-linux-gnueabi-gcc -o @< -c -nostdlib
这样即可执行不回显

其他名字makefile

默认只需找Makefile,其他的make -f [filename]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值