c++ - 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 包不再可用。
解决方案
如果您最近更新到 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=
行)可能会帮助您的编译器找到合适的头文件。
推荐阅读
- r - 使用 r 中 dplyr 中的 mutate_all() 将 df 中的每一列除以其他列
- javascript - 如何在返回值之前完全解决 axios/fetch call/promise?
- cassandra - Cassandra 数据建模 IoT 最佳实践
- android - Java:数独拼图生成无法正常工作
- pytest - 使用 tox 运行时,如何使 pytest 测试可以访问测试数据文件?
- javascript - 渲染上的意外令牌反应
- javascript - nodejs 加密方法链接如何工作?
- java - 调整大小时控件需要保持居中(响应式 UI、JavaFX)
- php - Laravel hasMany 返回 null
- apache-spark - Spark 失败,因为 S3 文件已更新。如何消除这个错误?