使用pip安装hana-ml时遭遇setuptools依赖异常问题
问题分析
安装SAP HANA的机器学习包hana-ml时,尽管本地环境已安装满足版本要求的setuptools(69.0.3),但在安装依赖pydotplus的环节,pip启动的构建依赖子进程无法通过公司代理访问PyPI,导致子进程报错找不到setuptools>=40.8.0。本质是子进程未继承shell的代理配置,和本地已安装的setuptools无关。
解决方案
以下是几个可直接尝试的解决方法:
给pip全局配置代理
在用户目录创建/修改配置文件,让所有pip进程(包括子进程)自动使用代理:- Windows:在
%APPDATA%\pip\pip.ini中添加:[global] proxy = <my_companys_proxy> - Linux/macOS:在
~/.config/pip/pip.conf中添加上述内容
之后直接执行:
pip install hana-ml- Windows:在
安装pydotplus的预编译wheel包
跳过源码构建环节,直接安装无需编译的wheel版本:pip install pydotplus --only-binary :all: --proxy <my_companys_proxy>完成后再执行
pip install hana-ml --proxy <my_companys_proxy>即可。关闭构建隔离,使用本地依赖
用--no-build-isolation参数让pip直接使用当前环境的setuptools,不创建隔离的构建环境:pip install hana-ml --proxy <my_companys_proxy> --no-build-isolation手动安装依赖后再装hana-ml
先逐个安装所有依赖,再跳过依赖检查安装hana-ml:# 安装依赖 pip install hdbcli>=2.18.22 pydotplus --proxy <my_companys_proxy> # 安装hana-ml本身 pip install hana-ml --no-deps --proxy <my_companys_proxy>
内容的提问来源于stack exchange,提问作者erdluc5678
相关产品推荐
相关产品推荐

