我对 C++ 完全陌生(昨天刚从头开始学习)。今天我将这个 macos 更新到 11.3,现在当我在 clion 中运行我的 c++ 代码时,我得到了这个错误,
====================[ Build | untitled | Debug ]================================
/Applications/CLion.app/Contents/bin/cmake/mac/bin/cmake --build /Users/nibin/CLionProjects/untitled/cmake-build-debug --target untitled -- -j 6
[ 50%] Building CXX object CMakeFiles/untitled.dir/main.cpp.o
clang: warning: no such sysroot directory: '/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk' [-Wmissing-sysroot]
In file included from /Users/nibin/CLionProjects/untitled/main.cpp:1:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/iostream:37:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/ios:214:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/iosfwd:95:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/wchar.h:119:15: fatal error: 'wchar.h' file not found
#include_next <wchar.h>
^~~~~~~~~
1 error generated.
make[3]: *** [CMakeFiles/untitled.dir/main.cpp.o] Error 1
make[2]: *** [CMakeFiles/untitled.dir/all] Error 2
make[1]: *** [CMakeFiles/untitled.dir/rule] Error 2
make: *** [untitled] Error 2
我搜索了互联网,但一个字也听不懂。我确实尝试了一些并在我的终端中得到了这个,
➜ ~ xcode-select --install
xcode-select: error: command line tools are already installed, use "Software Update" to install updates
➜ ~ xcrun --show-sdk-path
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk
➜ ~ sudo xcode-select --switch /Library/Developer/CommandLineTools/
Password:
➜ ~ xcrun --show-sdk-path
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
我已经有 xcode 工具并且它是最新的。我尝试了一种解决方案,即更改路径但仍然无效。所以我只是把文件带回原来的位置,
➜ ~ sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer/
➜ ~ xcrun --show-sdk-path
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk
我尝试了另一种解决方案,但出现错误,
➜ ~ open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
The file /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg does not exist.
我打开 /Library/Developer/CommandLineTools/ 得到了这个,
➜ ~ cd /Library/Developer/CommandLineTools
➜ CommandLineTools ls
Library SDKs usr
一些涉及清除缓存的解决方案“删除当前项目和依赖项中的任何旧 CMakeCache.txt 并重建解决了该问题。” 对不起,如果这听起来很愚蠢,但我不太明白。这是否意味着我们必须删除整个文件 CMakeCache.txt 或者它只是内容。