macOS Ventura更新后编译报错:_stdio.h缺失求助
macOS Ventura更新后gcc编译找不到_stdio.h的解决方案
重新安装Homebrew版gcc
卸载现有gcc并清理残留,再重新安装:brew uninstall gcc brew cleanup brew install gcc安装完成后,确认版本:
gcc --version。注意Homebrew在Ventura中安装的gcc可能带有版本后缀(如gcc-12),编译时也可以直接使用带后缀的命令,比如gcc-12 *.c。指定系统标准库路径编译
编译时手动指定MacOS SDK路径,强制gcc使用系统标准库:gcc *.c -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk若不想每次编译都输入路径,可将其加入环境变量:
- 打开Shell配置文件(bash用
~/.bash_profile,zsh用~/.zshrc):open ~/.zshrc - 添加一行:
export CFLAGS="-isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk" - 使配置生效:
source ~/.zshrc
- 打开Shell配置文件(bash用
重置Xcode Command Line Tools
旧版Command Line Tools可能在系统更新后路径异常,重置后可修复:sudo rm -rf /Library/Developer/CommandLineTools xcode-select --install安装完成后确认路径是否正确:
xcode-select -p,正常输出应为/Library/Developer/CommandLineTools
内容的提问来源于stack exchange,提问作者VictordeLeusse
相关产品推荐
相关产品推荐

