所有
为什么以下3行Makefile根本不显示任何文件; 即使我知道$(SOURCE)目录中有文件。 没有语法错误。
提前谢谢
SOURCE := src
CFILES := $(foreach, dir, $(SOURCE) , $(notdir $(wildcard $(dir)/*.c)))
all:
echo "$(CFILES)"
Phi Luu
答案 0 :(得分:0)
首先,您在foreach
后面有一个逗号,而不是您想要的。
其次,你必须非常小心makefile中的空格。 makefile中的任何尾随空格(包括在函数中)都将保留为单词的一部分。
将其重写为:
CFILES := $(foreach dir,$(SOURCE),$(notdir $(wildcard $(dir)/*.c)))
另一种选择是:
CFILES := $(wildcard $(addsuffix /*.c,$(SOURCE)))