M1 Mac安装SciPy提示No BLAS/LAPACK libraries found报错如何解决
M1芯片Mac安装SciPy失败的解决方案
核心原因
pip安装时无法识别Homebrew安装的OpenBLAS路径,且你尝试安装的1.7.2版本SciPy对M1架构原生支持不完善,默认触发源码编译导致依赖校验失败。
可直接执行的解决步骤
方案一:指定OpenBLAS环境变量安装(优先尝试)
M1芯片Mac的Homebrew默认将OpenBLAS安装在/opt/homebrew/opt/openblas路径,安装前先指定环境变量让SciPy识别依赖:
# 临时指定OpenBLAS路径 export OPENBLAS=$(brew --prefix openblas) export CFLAGS="-falign-functions=8 ${CFLAGS}" # 直接安装兼容M1的高版本SciPy pip install scipy>=1.8.0
方案二:通过Conda安装(零依赖问题)
如果pip安装始终报错,使用适配M1架构的Miniforge发行版安装,自动处理所有架构和依赖匹配:
- 完成Miniforge安装后,激活你正在使用的虚拟环境
- 执行安装命令:
conda install scipy
方案三:关联Homebrew已安装的SciPy到虚拟环境
如果你之前已经通过Homebrew安装了SciPy,只需要将全局安装的SciPy软连到PyCharm的虚拟环境即可:
# 查询Homebrew安装的SciPy路径 BREW_SCIPY_PATH=$(brew list scipy | grep "site-packages/scipy$" | head -n 1) # 软连到当前虚拟环境的第三方库目录 ln -s ${BREW_SCIPY_PATH} /Users/wes/PycharmProjects/pythonProject/venv/lib/python3.9/site-packages/
安装验证
执行以下命令确认安装成功:
import scipy print(scipy.__version__)
无报错且正常输出版本号即为安装成功。
内容的提问来源于stack exchange,提问作者Wes
相关产品推荐
相关产品推荐

