N****w 发帖数: 21578 | 1 比如
FILES=$(wildcard *.c)
all: $(FILES)
echo $<
如果当前目录有 "a b.c", 就会报错
make: *** No rule to make target `"a', needed by `all'. Stop. | N****w 发帖数: 21578 | 2 haha 原来这个是 gnu make 的死穴...
只能用替换法,把文件名里的空格先替换成特殊字符...
http://www.cmcrossroads.com/content/view/7859/268/
【在 N****w 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 比如 : FILES=$(wildcard *.c) : all: $(FILES) : echo $< : 如果当前目录有 "a b.c", 就会报错 : make: *** No rule to make target `"a', needed by `all'. Stop.
| l*******G 发帖数: 1191 | 3 can you try:
FILES=$(wildcard *.c)
all: "$(FILES)"
echo $< |
|