使用 find 和 gcc 创建包含空格的文件路径的源依赖项时出现问题

发布于 2024-10-11 19:12:38 字数 206 浏览 4 评论 0原文

我正在使用 gnu-make 构建嵌入式软件。使用 find 收集源(包括其路径)。由于某些路径/文件名包含空格,构建过程失败。

这样的列表看起来像: 来源=\ ../../源/演示空间/hello.c \ ../../Source/demo space/modul1.c

有没有任何线索,使 make 能够处理此类路径? - 用某种通配符替换空格?

I'm building an embedded software using gnu-make. Sources including their paths are collected using find. The build process fails since some paths/filenames contain whitespace.

Such list look like:
source=\
../../Source/demo space/hello.c \
../../Source/demo space/modul1.c

Is there any clue, enabling make to handle such paths?
-replacing spaces with some kind of wildcard?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

救星 2024-10-18 19:12:38

Make 路径名中不能包含空格。没有直接的方法可以解决这个问题。在 Windows 上,您可能可以使用短名称(c:/PROGRA~1 而不是 c:/Progam Files 等)。否则,明智地使用符号链接可能会有所帮助(该技术在 Cygwin 中确实有效)。

我见过用户(主要是 Windows 用户)对这个“限制”感到抓狂。不过,如果您使用命令行,您很快就会发现带有空格的路径名有点烦人。 [FWIW μSoft 似乎已删除 Windows Vista 中所有系统路径中的空格。]

Make can not abide spaces in pathnames. There is no direct way around this. On Windows you might be able to use short names (c:/PROGRA~1 rather than c:/Progam Files, etc.). Otherwise judicious use of symbolic links might help out (this technique does work in Cygwin).

I've seen users (mainly windows users) tear their hair out at this "restriction." If you work on the command-line though, you will quickly find pathnames-with-whitespace more than slightly annoying. [FWIW μSoft seem to have removed the whitespace from all system paths in Windows Vista.]

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文