【发布时间】:2012-02-02 16:44:24
【问题描述】:
为了简化我的问题,如果我有如下的 Makefile
%: %.c
gcc -o $@ $<
make foo
Make foo 将从foo.c 构建可执行文件foo。没有问题。如果我要更改 Makefile 如下,以便我可以从 Makefile 命令行传递目标
# To make things little complex
TARG=$(EXE)
$(TARG): %.c
gcc -o $@ $<
make EXE=foo
上面的命令make EXE=foo说:
"make: *** No rule to make target %.c, needed byfoo'。停止。`
为什么$(TARG)没有在 Makefile 的 target 规则中得到扩展?
【问题讨论】: