所以也许我在这里错过了一些东西,但这就是我想要做的:
test.c:
printf("HGID=%s\n", HGID);
build.sh:gcc test.c -o xxx -DHGID="\"$(hg id)\""
$HGID=12345678+ tip
一切都很好。
现在使用build.sh:
HGSTR="\"$(hg id)\""
gcc test.c -o xxx -DHGID="$HGSTR"
仍然可以
但是如果我尝试将build.sh更改为:
CFLAGS=-DHGID="\"$(hg id)\""
gcc test.c -o xxx $CFLAGS
疯狂开始...
gcc: error: tip": No such file or directory
在这种情况下,如何获取带空格的带引号的字符串给gcc?