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

隔离环境中使用pyproject.toml+setuptools_scm安装本地包报错求助

问题解决方法

错误原因

即便当前环境已安装符合版本要求的setuptools和setuptools_scm,使用pip install --no-index -e .时,pip默认会创建隔离的构建环境来安装build-system.requires中声明的依赖。此时pip无法访问当前环境已安装的包,而是尝试寻找可安装的分发包(如wheel/sdist),但--no-index禁止了从PyPI下载,因此找不到setuptools的分发包导致报错。

解决方案

方案1:复用当前环境的已安装依赖(最简便)

直接添加--no-build-isolation参数,跳过隔离构建环境,使用当前环境已安装的setuptools和setuptools_scm:

pip3 install --no-index --no-build-isolation -e .

该参数会让pip复用当前环境中已有的构建依赖,无需额外准备分发包。

方案2:指定本地依赖包路径

如果需要保留构建隔离环境,可提前准备好setuptools和setuptools_scm的分发包(wheel/sdist):

  1. 在有网络环境下下载对应版本的包:
    pip download setuptools==66.1.1 setuptools_scm==7.1.0
    
  2. 将下载的包复制到隔离环境的某个目录(如./local_pkgs)
  3. 执行安装命令时指定本地包路径:
    pip3 install --no-index --find-links=./local_pkgs -e .
    
    pip会从./local_pkgs目录中查找所需的构建依赖。

验证

执行命令前可确认当前环境的依赖版本:

pip3 show setuptools setuptools_scm

确保setuptools版本≥40.8.0,setuptools_scm版本符合要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 22:42:43