首页 > 解决方案 > macOS Big Sur 11.1 找不到 stdlib.hw

问题描述

我在我的 cpp 项目的构建文件夹中,想要编译 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 包不再可用。

标签: c++makefilecompiler-errorsdeveloper-toolsmacos-big-sur

解决方案


如果您最近更新到 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"

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

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


推荐阅读