zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    微信小程序入门
    webpack
    模块化开发(1)
    HTML5表单
    移动端入门
    MySQL
    js面向对象与PHP面向对象总结
    PHP
    Git指令
    Redux
  • 原文地址:https://www.cnblogs.com/wxkang/p/9771812.html
Copyright © 2011-2022 走看看