You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows系统下PyPy安装SciPy报错:找不到lapack/blas资源的解决方法

解决PyPy 2.7 32位Windows下安装SciPy的BLAS/LAPACK依赖问题

我之前在PyPy 2.7的Windows 32位环境里踩过完全一样的坑,折腾了好一阵才搞定,给你几个靠谱的解决方案:

1. 手动指定BLAS/LAPACK库路径编译SciPy

Windows上PyPy默认找不到BLAS和LAPACK的系统库,得先准备好适配32位的静态库:

  • 先获取Windows 32位的BLAS和LAPACK静态库(可以找预编译版本,或者用MinGW自己编译Netlib的BLAS/LAPACK源码)
  • 设置环境变量指向这些库,然后强制源码编译SciPy:
    set BLAS=C:\your-path\blas.lib
    set LAPACK=C:\your-path\lapack.lib
    pypy -m pip install scipy --no-binary :all:
    
    这里--no-binary :all:是关键,它会跳过适配CPython的wheel包,强制用源码编译适配PyPy的版本。

2. 先编译带BLAS依赖的NumPy,再装SciPy

你之前用python setup.py install装的NumPy可能没有链接BLAS库,这会导致SciPy编译时找不到依赖。可以重新编译NumPy:

  • 先卸载现有NumPy:
    pypy -m pip uninstall numpy -y
    
  • 同样设置BLAS和LAPACK的环境变量,然后重新编译安装NumPy:
    set BLAS=C:\your-path\blas.lib
    set LAPACK=C:\your-path\lapack.lib
    pypy setup.py install
    
  • 完成后再执行pypy -m pip install scipy --no-binary :all:,这时候SciPy就能复用NumPy的BLAS依赖了。

3. 准备好编译环境

别忘了Windows上源码编译需要32位的编译器,推荐安装MinGW-w64的32位版本,然后把MinGW的bin目录(比如C:\MinGW\bin)添加到系统PATH里,否则编译过程中会报错找不到gcc等工具。

另外,如果你能找到社区里针对PyPy 2.7 32位Windows预编译好的SciPy源码包(已经配置好BLAS依赖的),直接下载后用pypy setup.py install安装会更省事。

内容的提问来源于stack exchange,提问作者TanMath

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 06:39:17