0

我正在尝试将变量与 makefile 一起使用,但似乎无法始终如一地使用它们。

以下代码(在文件 silly2.mak 中):

SUBS = src
SSUBS=/src2
SHELL=/bin/sh

silly5:
    echo '<<<' $$SUBS '--' $$SSUBS '--' $$SHELL '>>>'

运行时:

me@ubuntu:/usr/local/hsfsys$ make -f silly2.mak silly5

给出以下输出:

echo '<<<' $SUBS '--' $SSUBS '--' $SHELL '>>>'
<<< -- -- /bin/bash >>>

为什么“SHELL”似乎比我的其他变量更有效?它是某种保留字吗?我已经尝试移动变量的顺序并查看在线文档,但仍然不明白为什么 echo 会选择 SHELL 的值,而不是 SUBS 或 SSUBS。

4

1 回答 1

0

尝试这个

SUBS = src
SSUBS=/src2
SHELL=/bin/sh

all:
    echo '<<<' $(SUBS) '--' $(SSUBS) '--' $(SHELL) '>>>'
于 2012-07-08T05:05:48.337 回答