4

我有一个makefile,其中定义了所有环境变量(顶级目录),我想在最内层的shell脚本中使用其中一些变量。

我应该如何访问脚本中的这些变量?我需要 IPC 来传递变量还是有其他方法可以做同样的事情?

4

2 回答 2

5

如果make导出变量,您可以立即使用它们(但请注意,更改 shell 变量不会更改make变量)。如果您使用 GNU make,则可以使用该export指令。

如果make不导出变量,可以使用shell的一次性赋值,比如在

UNEXPORTED_VAR = foo
all:
     UNEXPORTED_VAR='$(UNEXPORTED_VAR)' OTHERVAR='$(OTHERVAR)' script.sh
于 2013-05-20T08:28:01.690 回答
0

就像 Jens 说的对,export make variables 可以使用。但他的解决方案对我不起作用。因此,您还可以将它们导出到 makefile 中:

export UNEXPORTED_VAR
于 2018-05-31T09:12:16.737 回答