Linux系统Python3.9.18虚拟环境安装Parquet遇setuptools依赖问题
解决thriftpy2安装时忽略本地setuptools与代理的问题
问题根源
thriftpy2的构建逻辑可能强制从网络拉取setuptools,既没继承pip的代理配置,也没识别到你本地已安装的最新版setuptools 70.1.1,导致构建依赖时因网络连接失败报错。
可行解决方案
1. 绑定本地setuptools版本安装thriftpy2
安装thriftpy2时明确指定使用本地已有的setuptools版本,避免它去网络查找:
pip install thriftpy2 setuptools==70.1.1 --proxy <myProxyDetails>
搞定thriftpy2后再安装parquet-python:
pip install parquet --proxy <myProxyDetails>
2. 关闭构建隔离
pip的构建隔离机制会创建临时环境,可能没携带代理配置或本地依赖,加上--no-build-isolation参数让构建过程直接使用当前虚拟环境的包:
pip install thriftpy2 --no-build-isolation --proxy <myProxyDetails>
完成后再安装parquet-python即可。
3. 设置全局代理环境变量
部分包的构建脚本不读取pip的--proxy参数,先将代理配置为系统环境变量:
export HTTP_PROXY=<myProxyDetails> export HTTPS_PROXY=<myProxyDetails>
然后直接执行安装命令:
pip install thriftpy2 pip install parquet
4. 手动下载源码安装
如果前面的方法都无效,直接下载thriftpy2源码包进行本地安装:
# 通过代理下载源码包(以0.4.14版本为例) wget https://files.pythonhosted.org/packages/source/t/thriftpy2/thriftpy2-0.4.14.tar.gz --proxy <myProxyDetails> # 解压并安装 tar -xzf thriftpy2-0.4.14.tar.gz cd thriftpy2-0.4.14 pip install . --no-build-isolation
之后再安装parquet-python。
内容的提问来源于stack exchange,提问作者Brent Easton
相关产品推荐
相关产品推荐

