Mac系统使用pip3安装scipy==1.2.1失败是什么原因?
Mac Python虚拟环境安装scipy==1.2.1失败解决方案
报错核心原因
- 你要安装的scipy 1.2.1版本没有适配当前Mac系统的预编译wheel包,pip会自动拉取源码进行编译
- 编译scipy需要依赖LAPACK/BLAS线性代数库,你的系统中没有安装对应依赖
- 旧版scipy不再支持Mac原生的Accelerate框架作为依赖替代
可行解决方案
方案1:安装系统依赖后再安装scipy
先确保你已经安装了Homebrew包管理器,然后依次执行以下命令:
- 安装openblas和lapack依赖
brew install openblas lapack - 激活你的Python虚拟环境后,指定依赖路径安装scipy
export OPENBLAS="$(brew --prefix openblas)" export LAPACK="$(brew --prefix lapack)" pip3 install scipy==1.2.1
方案2:使用conda管理环境
如果你的使用场景允许更换包管理工具,conda会自动处理scipy的所有依赖,无需手动配置:
- 安装miniconda后创建对应Python版本的环境
- 直接执行
conda install scipy==1.2.1即可完成安装
方案3:升级scipy版本
如果业务对scipy版本没有强绑定要求,直接安装更高版本的scipy即可,新版本已经适配了Mac系统的预编译包,无需手动编译:pip3 install scipy
额外优化建议
- 先升级你的pip版本,避免旧版本pip的兼容性问题:执行
/Users/sahibyar/Dailytasks/env/bin/python3.7 -m pip install --upgrade pip - 提前安装wheel包,避免后续安装其他包时触发源码编译:
pip3 install wheel
内容的提问来源于stack exchange,提问作者Sahib Yar
相关产品推荐
相关产品推荐

