Makefile 总述 Makefile 里有什么 环境变量 MAKEFILES 引用其它的 Makefile Makefile 的文件名 环境变量 MAKEFILES

Makefile 里有什么

         Makefile :显式规则、隐晦规则、变量定义、文件指示,注释

   显式规则

          makefile 明显指出,要生成的文件,文件的依赖文件,生成的命令

   隐晦规则

          make 有自动推导的功能

   变量定义

         定义一系列的变量(字符串),当执行,变量都会被扩展到相应的引用位置上

   文件指示

       一个 Makefile 中引用另一个 Makefile

      根据某些情况指定 Makefile 中的有效部分

      定义一个多行的命令

   注释

          只有行注释,注释是用‘ # ’字符

         用反斜框进行转义’ \# ‘

         Makefile 的命令,必须要以[Tab]键开始

Makefile 的文件名

   默认情况,make 命令会在当前目录下按顺序找寻文件名为“GNUmakefile”、“makefile”、“Makefile”的文件,并解释这个文件

   推荐用“ Makefile ”

# 用于指定特定的Makefile
make -f ...
make --file ...

引用其他Makefile

     include :包含别的 Makefile
 

# filename: Shell的文件模式(可保含路径和通配符)
include <filename>

  例子:

# 文件 file.make $(MK_ARCH) a.mk b.mk
include file.make $(MK_ARCH) *.mk

  文件没有指定 绝对路径或 相对路径,会在当前目录查找
 

# 参数所指定的目录下查找
make -I ...
make --include-dir ...

  还会在 /usr/local/bin 或 /usr/include 查找
 

# - : 出现什么错误,都不会报错继续执行
-include <filename>

环境变量 MAKEFILES

     MAKEFILES:其它的 Makefile,用空格分隔

     MAKEFILES中定义的文件发现错误,make 不会处理

     不推荐使用该环境变量

make 的工作方式

     读入所有的 Makefile

     读入 include 的其它 Makefile

     初始化文件中的变量

    推导隐晦规则,并分析所有规则

    创建 所有的目标文件的依赖关系链

    根据依赖关系,重新生成目标

    执行生成命令

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务