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

PyPy3.8下安装scipy==1.8.0失败,求兼容解决方案

Scipy与PyPy的兼容性说明

Scipy对PyPy的支持是逐步推进的,你尝试的1.6.x到1.9.x版本在PyPy 3.8环境下没有官方预编译的二进制包(wheel),必须通过源码编译安装,但PyPy的编译依赖逻辑和CPython存在差异,这就是你接连遇到编译错误的核心原因。Scipy 1.10.0及以后的版本对PyPy支持更完善,部分版本提供了预编译wheel,安装流程更顺畅。

解决安装失败的具体步骤

1. 修复Python.h: No such file or directory错误

这个问题是因为缺少PyPy的开发头文件,不同系统的安装方式如下:

  • Debian/Ubuntu类系统:安装pypy3-dev包
    sudo apt-get install pypy3-dev
    
  • RedHat/CentOS类系统:安装pypy3-devel包
    sudo dnf install pypy3-devel
    
  • macOS(使用Homebrew):重新安装pypy3即可自动带上开发文件
    brew reinstall pypy3
    

2. 确认Fortran编译环境正常

安装gfortran后,先执行gfortran --version检查是否能正常调用。如果是macOS,建议通过Homebrew安装gcc(自带gfortran):

brew install gcc

3. 换用支持PyPy的Scipy版本

放弃1.6.x-1.9.x版本,直接安装Scipy 1.10.0及以上版本,这些版本提供了PyPy兼容的预编译wheel,无需源码编译:

pip install scipy>=1.10.0

如果必须使用旧版本,除了配置好上述开发环境,还要确保pip、setuptools、wheel为最新版本,然后强制源码编译:

pip install scipy==1.8.0 --no-binary :all:

不过这种方式编译耗时久,还可能触发其他依赖兼容问题,不推荐。

4. 替代方案:使用conda-forge安装(环境支持时)

如果你的环境支持conda,可以直接通过conda-forge安装适配PyPy的Scipy:

conda create -n pypy-scipy pypy=3.8 scipy -c conda-forge
conda activate pypy-scipy

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 21:15:46