如何在预处理后显示makefile?例如,如果我们有两个makefile:
# Makefile
include Makefile2
# Makefile2
a:a.c
gcc -o a a.c
然后<preprocessor> Makefile
应该给出:
a:a.c
gcc -o a a.c
它与C预处理器的作用类似(gcc -E
)。是否有这样的makefile预处理器?
答案 0 :(得分:1)
您没有指定编写makefile的make工具。假设它是GNU make,您可以尝试使用 -n( - just-print)选项See Command-Line Options chapter here运行makefile。这将显示make将在不执行的情况下执行(但是,将执行评估变量所需的命令)。这可能是你想要看到的最接近的。
这会导致make读取makefile并打印出每个命令 通常执行以更新目标但不执行它们。
除此之外还有 $(警告)函数来调试makefile。您可以将它几乎放在makefile中的任何部分,以下将显示该位置中所有已定义变量的值:
$(warning Variables HERE: .VARIABLES)