macOS Big Sur 11.1 找不到 stdlib.h w

时间:2020-12-21 11:51:15

标签: c++ makefile compiler-errors developer-tools macos-big-sur

我在我的 cpp 项目的 build 文件夹中,想要编译 make 作为回应,我得到

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/stdlib.h:97:15: fatal error: 'stdlib.h' file not
      found
#include_next <stdlib.h>

我也无法在 Clion 中编译。

我尝试使用 xcode-select -p 设置不同的路径,但 sdk 包不再可用。

1 个答案:

答案 0 :(得分:0)

如果您最近更新到 Big Sur,则需要重新运行 xcode-select --install 以重新安装 XCode 命令行工具(也可通过 https://developer.apple.com/download/more/ 获得)。

如果您最终遇到库路径问题,以下可能会有所帮助:

_sdk_root=`xcrun --sdk macosx --show-sdk-path`
export LIBRARY_PATH="${_sdk_root}/usr/lib"

这会将 LIBRARY_PATH 设置为 XCode 将使用的相应系统 /usr/lib

同样,添加 -I${_sdk_root}/usr/include(您仍然需要上面的 _sdk_root= 行)可以帮助您的编译器找到合适的标头。