【发布时间】:2012-12-03 14:12:07
【问题描述】:
在我的 Makefile 中,我需要获取其他目录中存在的所有目录的列表。
要获取与我的Makefile 在同一文件夹中的所有目录的列表,我使用:
DIRECTORIES = $(wildcard */)
all:
echo $(DIRECTORIES)
效果很好,并给了我想要的列表。但是,如果我想拥有另一个目录中所有目录的列表,则使用
DIRECTORIES = $(wildcard ../Test/*/)
all:
echo $(DIRECTORIES)
我得到了该目录中所有文件(带路径)的列表,包括 .h 和 .cpp 文件。
任何建议为什么会发生这种情况以及如何解决它?也欢迎其他获取列表的解决方案。
【问题讨论】:
-
你确定通配符是个好主意吗?
-
@JonathanLeffler 我不想手动添加每个目录,因为它是一个更大的项目。如果您知道如何避免使用通配符,请告诉我。
-
您看到此行为的原因是您的 GLIBC 版本中存在错误:sourceware.org/bugzilla/show_bug.cgi?id=10278
标签: makefile wildcard gnu-make