makefile文件编写

简介: makefile文件编写

1.Makefile 中$@  $^ $< 解释

转载的例子


OBJS = ifconfig.o tftp_util.o ping.o
SRCS = $(OBJS:.o=.c)
PHONY += all
all : $(BUILT_IN_OBJ)
$(BUILT_IN_OBJ) : $(OBJS)
        $(LD) $(LDFLAGS) -r $^ -o $@
$(OBJS) : $(SRCS)
        $(CC) $(CFLAGS) -c $^
PHONY += clean
clean :
        @rm -vf *.o
.PHONY : $(PHONY)

----------------------------------------------------------------------------------------------------------------------------------------

说明:$(BUILT_IN_OBJ) 和 $(PHONY)来自上层目录g-bios/app/Makefile,可以不用理解。


$@ 代表目标 上例为$(BUILT_IN_OBJ)


$^ 代表所有的依赖对象 上例第一个$^为$(OBJS),即 ifconfig.o tftp_util.o ping.o,上例第二个$^为$(SRCS),即$(OBJS:.o=.c) (Makefile解释后为: ifconfig.c tftp_util.c ping.c)


$< 代表第一个依赖对象 前面例子修改如下:


$(BUILT_IN_OBJ) : $(OBJS)


       $(LD) $(LDFLAGS) -r $< -o $@


则$<表示为ifconfig.o



相关文章
|
6月前
|
Shell Linux C++
Makefile编译实战
Makefile编译实战
82 0
|
C语言
Makefile教程(Makefile的结构)
Makefile教程(Makefile的结构)
97 0
|
3月前
|
Shell
makefile编写与使用
makefile编写与使用
63 1
|
6月前
|
编译器 测试技术
如何编写自己的Makefile(1)
如何编写自己的Makefile(1)
28 1
|
12月前
|
Shell
如何使用makefile
如何使用makefile
|
12月前
|
IDE 编译器 程序员
编写Makefile
编写Makefile
57 0
|
IDE Linux Shell
【Makefile】简单的Makefile编写
【Makefile】简单的Makefile编写
|
Shell Linux C语言
Makefile文件 | 编写指南
Makefile文件 | 编写指南
328 0