首页 > 其他 > 详细

Makefile 规则的使用

时间:2016-12-30 12:54:13      阅读:272      评论:0      收藏:0      [点我收藏+]

1.Makefile格式

//最终目标

all: led.o //依赖

arm-linux-ld -Tled.lds -o led.elf led.o //命令

arm-linux-objcopy -O binary led.elf led.bin //命令

//目标

led.o : led.S//依赖

arm-linux-gcc -g -o led.o -c led.S //命令

.PHONY: clean

//伪目标--无依赖

clean:

rm *.o led.elf led.bin //命令

2.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)
gcc app1 .o $(obj) - o app1
app2: app2.o $(obj)
gcc app2.o $(obj) - o app2

 

3.makefile规则

makefile中,用 除了 可以自 己定义变量外, 还可以使用
存在系统已经定义好的默认变量。
v $^ 代表所有的依赖文件
v $@ 代表目标
v $< 代表第一个依赖文件
使用前:
led.o : led.S
arm- linux- gcc -g o led.o - c led.S
使用后:
led.o : led.S
arm- linux- gcc -g o $@ - c $^

4.%表示任意的名字--通用规则

all:led.bin
led.bin: led.o
    arm-linux-ld -Tled.lds -o led.elf led.o
    arm-linux-objcopy -O binary led.elf led.bin

%.o : %.S
    arm-linux-gcc -g -o $@ $< -c

.PHONY: clean
clean:
    rm *.o led.elf led.bin led.dis

5.Makefile回显

Makefile#字符后的内 容被视作注释。
hello: hello.c
@gcc hello. c o hello
@:取消回显 演示)

6.文件名

make命令默认在当 前目 录下寻找名字为
makefile或者Makefile的工程文件, 名字
不为这两者之一时, 可以使用 如下方法指
     make f 文件名

 

Makefile 规则的使用

原文:http://www.cnblogs.com/wxb20/p/6236324.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!