打印变量从内生成文件
问题描述:
我在我的生成文件以下代码:打印变量从内生成文件
S_RES=$(shell cat output)
echo -e "Serial result = \t" $(S_RES)
基本上,我想存储外壳命令cat output
在S_RES变量的输出,然后该变量回声到屏幕(前面有一些解释性文字)。我也希望能够在我的程序中稍后使用该变量。我认为我遵循了各种StackOverflow问题中给出的指示,但它似乎不起作用。
答
如果简单的空间,而不是转义序列\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))
答
只是一个侧面说明
这个评估对使用时间,这是多次$(A)用于
A = something
这个评价上分析时,这样的值评估一次
A := something
不幸的是,似乎没有工作。我得到'Serial result ='打印出来,但不是S_RES的值。我假设我首先正确设置了S_RES - 是对的吗? – robintw 2011-05-17 23:44:09
你的'make''GNU-make'?如果是这样,那么这个版本是什么? 请参阅编辑。 – 2011-05-18 00:04:55
我得到以下输出: 答:= ABC 化妆:A:命令未找到 化妆:*** [测试]错误127 而我化妆的版本是GNU让3.81 – robintw 2011-05-18 00:09:22