zoukankan      html  css  js  c++  java
  • 读GNU官方的Make manual

    读GNU官网上的Make Manual,还只是读到1-2 chapter。相比之前的认知,有了一些新的认识,留此记录。

     

    make工具

    make是一个工具,其核心是根据文件的依赖关系,以及用户定义的命令过程,来生成目标文件。make工具支持一些变量/语法和内置函数以及shell命令。

    用户可以把这些写在Makefile中,来定义make工具工作的行为和过程。

    Rule

    一条make file rule是由如何的部分组成的:

    target … : prerequisites …
            recipe
            …
            …

    我将其比喻为:

    菜:材料
        由材料做成菜的做法

    Make工具默认会将找到的第一个菜,作为其default goal。这个菜,可能会依赖于其他菜。所以我们要把我们需要生成的可执行文件作为第一个菜哦~

    但是有的菜是没有材料的,并且也不被default goal所依赖,这种菜叫伪菜。伪菜的用途就是为了让make调用“做法”中所包含的命令,干一些辅助的事情。

    我们在命令行敲入”make”,只会生成default goal。如果要生成伪菜,就必须显式的敲入”make 伪菜”。

     

    $符号

    $符号在makefile中,是用来做变量引用用的,例如$(objects)就是代表objects变量的值。如果要引用$符号本身,需要使用$$。

    通配符

    * ? ~ […]这些通配符,都可以被make工具解析并扩展。

    待续。。。

     

    参考文献:http://www.gnu.org/software/make/manual/make.html#Include 

     

     

     

     

     
     
     
     
     
  • 相关阅读:
    beta版本冲刺七
    beta版本冲刺六
    beta版本冲刺五
    beta版本冲刺四
    beta版本冲刺三
    Beta版本冲刺(二)
    项目评测
    beta版本冲刺(一)
    福大软工 · 最终作业
    福大软工 · 第十二次作业
  • 原文地址:https://www.cnblogs.com/ironx/p/5007216.html
Copyright © 2011-2022 走看看