从Makefile中打印变量

时间:2011-05-17 22:48:02

标签: makefile

我的makefile中有以下代码:

S_RES=$(shell cat output)

echo -e "Serial result = \t" $(S_RES)

基本上,我想将shell命令cat output的输出存储在S_RES变量中,然后将该变量回显到屏幕(前面有一些解释性文本)。我也想在以后的程序中使用变量。我以为我已经按照各种StackOverflow问题中的说明进行了操作,但它似乎没有用。

2 个答案:

答案 0 :(得分:41)

如果允许使用简单空格而不是转义序列\t,那么make就是。{ GNU make 3.81或更高,$(info)可用 例如:

$(info Serial result = $(S_RES))

如果您的make版本为3.80或更低,则$(warning)可能符合 目的。但是,warning也会打印行号等。

修改 为了您的信息,我的GNU上的以下makefile输出abc使3.81。

A := $(shell echo abc)
$(info $(A))

答案 1 :(得分:6)

只是旁注

这会评估使用时间,这与使用$(A)的次数相同

A = something

这会对解析时间进行评估,因此值的计算值为

A := something