-1

我有一个makefile,其中包含C INCLUDES,其中包含空格。我无法绕过文件名中的空格。有没有办法在 gnu make 的文件名中有空格?

4

1 回答 1

0

Make 通过转义文件名中的空格对此提供了一些基本支持,因为以下 Makefile 将正确编译和重新编译 C 文件foo bar.c

foo\ bar: foo\ bar.c
    gcc -o "${@}" "${<}"

但是,您必须非常小心地引用您运行的每个命令,并且以空格分隔的文件列表的变量(例如,,SRCSLIBS将不起作用,尽管使用 Make text 函数进行足够多的黑客攻击是可能可以解析出引号并让一切正常工作……</p>

因此,虽然在规则和模式中对文件名中的空格有基本的支持,但任何复杂的事情都将是一项非常艰巨和令人沮丧的工作。

于 2013-02-01T05:02:05.627 回答