zoukankan      html  css  js  c++  java
  • makefile 自动化变量

     

    print xxx: *.c *.h
        echo $?
        echo $<
        echo $^
        echo $@
        touch print

    $? 所有比目标文件更新的依赖文件列表,空格分割。如果目标是静态库文件名,代表的是库成员( .o文件)。

    $< 规则的第一个依赖文件名。如果是一个目标文件使用隐含规则来重建,则它代表由隐含规则加入的第一个依赖文件

    $^ 规则的所有依赖文件列表,使用空格分隔。如果目标是静态库文件,它所代表的 只能是所有库成员( .o文件)名。一个文件可重复的出现在目标的依赖中,变量 “ $^”只记录它的一次引用情况。就是说变量“ $^”会去掉重复的依赖文件

     

     

    image

     

    $@ 表示规则的目标文件名。如果目标是一个文档文件( Linux中,一般称.a文件为 文档文件,也称为静态库文件),那么它代表这个文档的文件名。在多目标模式 规则中,它代表的是哪个触发规则被执行的目标文件名。

    如make xxx 就会输出xxx, make 则会输出print

  • 相关阅读:
    java 将动作和名字绑定
    java 切换不同的显示风格
    java 背景颜色更改
    java 图像显示
    java 字符串
    java 2D 绘图
    java jFrame
    java bitset and C++ bitset
    踏得网
    纯CSS画的基本图形(矩形、圆形、三角形、多边形、爱心、八卦等)
  • 原文地址:https://www.cnblogs.com/cute/p/4953469.html
Copyright © 2011-2022 走看看