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

Ubuntu 22.04虚拟机中用pyenv安装Python 3.7.0失败求助

Python 3.7.0 无法通过pyenv在Ubuntu 22.04虚拟机安装的解决思路

问题核心

报错本质是pyenv默认使用的pip安装脚本已不再支持Python 3.7,且虚拟机环境可能存在依赖缺失、pyenv版本老旧或缓存残留等问题,导致手动更新pip后仍无法完成安装。

解决步骤

  • 补全系统依赖
    Ubuntu 22.04安装旧版Python需要额外的编译依赖,虚拟机作为新环境可能未安装,执行以下命令补全:

    sudo apt update && sudo apt install build-essential libssl-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python-openssl
    
  • 指定兼容的pip安装脚本
    强制pyenv在安装Python 3.7.0时使用对应版本的pip安装脚本,直接执行:

    PYTHON_GET_PIP_URL=https://bootstrap.pypa.io/pip/3.7/get-pip.py pyenv install 3.7.0
    

    若网络不稳定,可先下载脚本到本地再指定路径:

    wget https://bootstrap.pypa.io/pip/3.7/get-pip.py -O ~/get-pip-3.7.py
    PYTHON_GET_PIP_URL=file://$HOME/get-pip-3.7.py pyenv install 3.7.0
    
  • 清理pyenv缓存
    之前安装失败的残留缓存可能干扰后续安装,清理后重试:

    rm -rf ~/.pyenv/cache/python-3.7.0*
    pyenv install 3.7.0
    
  • 更新pyenv版本
    若虚拟机的pyenv版本较旧,可能存在兼容性bug,更新后再尝试安装:

    cd ~/.pyenv && git pull
    pyenv install 3.7.0
    
  • 手动编译安装(终极方案)
    若以上方法均无效,直接手动编译Python 3.7.0并纳入pyenv管理:

    # 下载源码
    wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
    # 解压
    tar xzf Python-3.7.0.tgz
    cd Python-3.7.0
    # 配置编译参数,指定安装到pyenv版本目录
    ./configure --prefix=$HOME/.pyenv/versions/3.7.0 --enable-optimizations
    # 编译安装
    make -j$(nproc) && make install
    # 让pyenv识别新安装的版本
    pyenv rehash
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 16:22:15