制作通配符功能是 truncating/removing 输入的文件名

Make wildcard function is truncating/removing inputted filenames

我正在尝试通过 GNU Make 4.3 运行 为 i686-w64-mingw32 构建的 Makefile。 Makefile 中的一行以下列方式使用通配符函数来尝试获取工作目录中每个 .c 文件的名称。然而,文件名总是被 t运行 修饰,或者在某些情况下被彻底删除。例如,我制作了一堆文件:

touch Makefile m_test1.c m_test2.c test_1.c test_2.c test_t1.c test_t2.c test1.c test2.c

并用以下内容填充 Makefile:

SRC_C = $(wildcard *.c)

print1:
    $(info $$SRC_C is [${SRC_C}])

然而,以下内容打印到控制台:

$SRC_C is [1.c 2.c t1.c t1.c t2.c t2.c]

重新安装 Make 似乎可以解决问题。回想起来,我之前一直在搞乱旧版本的 MinGW,所以也许那个版本的 Make 在最近的 Windows 版本中不能正常工作。