未找到 macOS‘ wchar.h’文件

在 OS X 10.9.5 using XCode 6.0.1下,当我尝试从终端运行 make时,遇到了以下问题:

fatal error: 'wchar.h' file not found

这个问题在最近升级到小牛之前并没有发生。

54875 次浏览

首先确保安装了最新的 XCode。接下来,我们需要安装/修复/更新命令行工具

xcode-select --install

以前,XCode 希望它的活动开发人员目录位于

/Applications/Xcode.app/Contents/Developer/

但是最新的命令行工具被安装到

/Library/Developer/CommandLineTools/

所以我们需要切换 XCode 所寻找的位置

sudo xcode-select --switch /Library/Developer/CommandLineTools/

这些步骤为我和两个同事解决了问题。

在添加了 ssell 的帖子和 peter70的评论之后,在再次安装 xcode 命令行工具并切换 xcode 活动开发人员目录之后,我仍然遇到了一些问题。我正在使用 CMake,因此删除了调试/发布文件夹,这些文件夹中已有的 Makefile 引用了 Mojave 上过时的位置。因此,为了以后解决问题,在运行了 Ssell 的帖子中的命令之后:

xcode-select --install

sudo xcode-select --switch /Library/Developer/CommandLineTools/

我相信,如果您已经通过安装 Xcode 本身安装了命令行工具,那么您可能还需要同意使用 sudo xcodebuild --license的许可。如果您使用了之前的 xcode-select命令,我认为这没有必要。

然后删除生成的构建脚本。如果使用 CMake,删除 cmake-build-debugcmake-build-release目录(名称可能有所不同)

确保在更新 xcode之后更新所有引用 wchar的符号文件。对于我来说,完全清理构建目录已经工作

  • 我的错误与您的类似,它说 string.h not found,我通过运行以下命令解决了这个问题:
open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

我认为问题在于,对于 macOS Mojave 用户来说,默认情况下头文件不再安装在/usr/include 下。

删除所有生成的文件并重新启动编译对我来说很有用:

Https://discourse.brew.sh/t/solved-scan-build-from-llvm-7-0-seems-broken-on-macos-mojave/3151/14

删除所有生成的文件,比如@Alfredo Morales Pinzón。 如果使用 cmake,则需要删除工作字典,即“ cmake-build-debug”,并重新生成“ cmake-build-debug”。

xcode-select --install worked for me.

此外,如果你使用视觉工作室代码和你的智力行为怪异-

  1. 在项目根目录中创建一个名为 .vscode的文件夹。
  2. 通过微软安装 vscode 扩展调用 C/C + +
  3. 创建 c_cpp_properties.json文件并粘贴以下内容

project_dir > .vscode > c_cpp_properties.json

{
"configurations": [
{
"name": "macOS",
"includePath": ["${workspaceFolder}/**"],
"defines": [],
"macFrameworkPath": ["/System/Library/Frameworks", "/Library/Frameworks"],
"compilerPath": "/usr/bin/clang",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "${default}"
}
],
"version": 4
}

如果它发生在你需要的更新 Xcode 之后(苹果卧槽?)从 https://developer.apple.com/download/more/?=for%20Xcode手动下载并安装 Xcode 的命令行工具

或者使用终端

xcode-select --install

在运行项目之前重新启动并可能清除生成缓存(删除 cmake-build-debug)。

我想这是需要每次更新后的 Xcode 所有主要程序更新

问题在于,编译器的路径在更新或其他进展(可能是 xcode 重新安装)之后会发生改变。 我已经尝试了每一个网站上提供的一切,可惜没有一个工作。

我发现很多问题导致了这个。

但对我起作用的是解除 GCC。 我早些时候还从自制程序安装了 gcc。 只要解除连接就行了。 因此,如果你也是少数几个谁安装 gcc 从自制然后

酿造断开链接

应该足以使它脱离默认路径,因此您将回到 Xcode 的默认 gcc (假设您已经安装了它)。