Makefile工程管理器
1: all:led.bin
2:
3: led.bin: led.o
4: arm-linux-ld -Tled.lds -o led.elf led.o
5: arm-linux-objcopy -O binary led.elf led.bin
6:
7: led.o : led.S
8: arm-linux-gcc -g -o led.o -c led.S
1.make命令依赖于Makefile文件
2.Makefile文件描述了整个程序的编译和链接规则,指出哪些文件需要编译,如何编译,产生何种文件。简化生产,一劳永逸。
3.Makefile的组成:规则 + 变量
由规则组成:
目标:依赖
命令(注意,前面一定是tab键)
一般汇编文件都需要先变成.o文件
4.伪目标,只有目标没有规则,通常用关键字.PHONY:clean标明。常用来做清除工作
5.最终目标:第一条规则的目标(但要明确规则指定的目标不一定会生成相同名字的文件)
当Makefile有多条规则时,要单独执行某条规则从而得到它对应的目标,用;
#make 想要的目标名字
若make后面没有参数,则默认执行第一条规则。
摘自国嵌论坛
在makefile中,用户除了可以自己定义变量外,还可以使用存在系统已经定义好的默认变量。
$^:代表所有的依赖文件
$@:代表目标
$<:代表第一个依赖文件
重要——makefile通用规则 %的作用,命令前加上@可以取消回显