macOS Big Sur 11.4下pyenv安装Python 3.7.6报BUILD FAILED错误如何解决
macOS Big Sur下pyenv安装Python 3.7.6报错解决方案
错误根因
本次报错与zlib依赖无关,是Python 3.7.6的历史源码未适配macOS Big Sur的系统SDK,clang编译时默认将隐式函数声明判定为错误导致的编译失败。
操作步骤
- 第一步:升级pyenv到最新版本,旧版本内置的python-build组件没有新系统的适配逻辑
brew upgrade pyenv
- 第二步:清理之前失败安装产生的残留文件,避免缓存干扰
rm -rf ~/.pyenv/versions/3.7.6
- 第三步:如果缺少基础依赖,先安装全编译需要的依赖包
brew install zlib bzip2 readline sqlite3 xz
- 第四步:添加编译参数执行安装,通过编译选项关闭隐式函数声明的错误判定,同时引入依赖头文件路径
CFLAGS="-I$(brew --prefix zlib)/include -I$(brew --prefix bzip2)/include -Wno-implicit-function-declaration" pyenv install 3.7.6
- 第五步:验证安装结果
pyenv global 3.7.6 python -V
输出Python 3.7.6即代表安装成功。
内容的提问来源于stack exchange,提问作者nissy
相关产品推荐
相关产品推荐

