当我使用 makefile 时,我经常在输出中看到 make[1]... make[2] ... 例如:
make all-recursive
make[1]: Entering directory `./splint-3.1.2'
Making all in src
make[2]: Entering directory `./src'
grep "FLG_" flags.def > Headers/flag_codes.gen
make
make[3]: Entering directory `.splint-3.1.2/src'
make[n] 中的 [n] 是什么意思?
最佳答案
评论是正确的——[n]
指的是递归层次。此时我想指向相关文档,但我扫描了 GNU make documentation在这方面什么也没发现——也许我遗漏了什么。
否则,我们可以求助于 source code . [n]
是 main.c
中的 int makelevel
变量。这对应于 MAKELEVEL
automatic make variable :
作为一项特殊功能,变量 MAKELEVEL 在从一个级别向下传递到另一个级别时会发生变化。该变量的值是一个字符串,它是十进制数的级别深度。顶级品牌的值为“0”; “1”代表子品牌,“2”代表子品牌,依此类推。当 make 为配方设置环境时发生增量
关于compilation - make[n] 中的 [n] 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20728138/