gpt4 book ai didi

c - 如果文件名包含空格,如何在 C 中使用 'make'?

转载 作者:太空宇宙 更新时间:2023-11-04 00:35:11 28 4
gpt4 key购买 nike

简介: 我制作了一个名为 temperature 2.c 的文件,当我使用终端“制作”该文件时,它返回一个错误:
make: *** 没有制定目标“温度 2”的规则。停止。
Terminal output screenshot

这是我在终端窗口中输入的内容。
使温度\2

版本信息:我正在使用 macOS 10.12.5 和 Apple LLVM 版本 8.1.0 (clang-802.0.42)
Xcode 版本 8.3.2 (8E2002 )

附加信息:我试过使用make "temperature 2",因为有人建议它可以在 Windows 上运行,但不能在 Mac 上运行。
我在终端窗口中选择了正确的目录,并且能够完美地编译所有其他文件。
Screenshot of the file

我知道我可以简单地将 space 替换为 underscore 来解决这个问题,但我首先想知道为什么会这样。
终端可以很好地处理名称中有 空格 的其他目录(使用反斜杠),那么为什么在这种情况下它不起作用?

谢谢提前。

最佳答案

Make 带有几个内置规则,但它们不会被设计为处理文件名中的空格或其他“不寻常”字符,因此您需要编写一个 Makefile 来覆盖它们或更改您的文件名。

此规则是您正在使用的规则 - 您必须在目标文件 $@ 周围加上引号并输入文件 $< .

%: %.c
$(CC) $(CFLAGS) -o "$@" "$<"

关于c - 如果文件名包含空格,如何在 C 中使用 'make'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44176592/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com