首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何打印makefile中的环境变量?

如何打印makefile中的环境变量?
EN

Stack Overflow用户
提问于 2020-10-15 08:00:07
回答 1查看 422关注 0票数 0

读完这个答案后:enter link description here,使用

代码语言:javascript
运行
复制
$(info    text…)
$(info $(var))

我在makefile中尝试过:

代码语言:javascript
运行
复制
.PHONY: all

all: ; $(info $(var))

(在bash中,var被设置在外部),我得到了输出:

make:没有什么可以为“all”做的。那么如何在makefile中打印在makefile外部定义的变量呢?

EN

回答 1

Stack Overflow用户

发布于 2020-10-30 17:06:39

如何打印makefile中的环境变量?

你可以完全按照你在问题中说的做。例如:

这是Makefile:

代码语言:javascript
运行
复制
.PHONY: all
all: ; $(info VAR='$(VAR)')

现在,在运行make之前,在命令行上设置环境变量VAR:

代码语言:javascript
运行
复制
$ VAR=foo make
VAR='foo'
make: Nothing to be done for 'all'.

或者导出它,然后运行make:

代码语言:javascript
运行
复制
$ export VAR=bar
$ make
VAR='bar'
make: Nothing to be done for 'all'.

因此,你需要寻找其他地方,找出为什么这对你不起作用。

请注意,您不需要将$(info)放入配方中;例如,下面是打印环境变量的一行makefile:

Makefile:

代码语言:javascript
运行
复制
$(info VAR='$(VAR)')

设置环境变量VAR并运行make:

代码语言:javascript
运行
复制
$ VAR=foo make
VAR='foo'
make: *** No targets. Stop.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64363030

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档