【发布时间】:2018-09-26 12:28:39
【问题描述】:
(这是我在 StackOverflow 上的第一个问题)
我必须在工作中使用 Mac,并且我正在使用 Code::Blocks 使用 C++ 进行编码(因为我已经习惯了这个 IDE)。 2 天前,我从 MacOS High Sierra 升级到了 MacOS Mojave,我可以说……这是一个错误的决定。
现在,当尝试#include <math.h> 时,我收到此错误:fatal error: sys/cdefs.h: No such file or directory。我试过用xcode-select --install重新安装xcode命令行工具,还是不行。
有人知道发生了什么,我该如何解决这个问题?
【问题讨论】:
-
您是否尝试过包含 cmath 而不是 math.h ? math.h 是 C 而不是 C++ cmath 是 c++ 等价物(实际上主要是一个包装器)。
-
感谢您的提示,但它绝对不会改变任何东西 :(
-
您是否尝试过使用 OSX 的搜索功能来查看文件是否真的存在于任何地方?如果是,您可以在 Code::Blocks 中添加位置路径。如果不是,您可能需要使用 brew 或类似工具安装标头。
-
这可能是您正在寻找的答案:stackoverflow.com/questions/19575956/… 看来您必须下载 cmd 工具并安装它,而不是运行 xcode-slect --install。
-
好的,谢谢您的回复。感谢我读到的内容,我尝试重新安装 gcc,它解决了问题。标头的位置必须在 High Sierra 和 Mojave 之间发生变化。
标签: c++ compilation codeblocks math.h macos-mojave