使用pip安装icount包时出现python setup.py egg_info报错如何解决
错误根因
该报错是iCount 2.0.0的安装配置文件和高版本setuptools不兼容导致的。新版setuptools要求install_requires参数必须是字符串或有序的字符串列表,而iCount 2.0.0的setup.py中该参数使用了集合这类无序类型,触发了校验失败。
解决方案
方案1:降级setuptools到兼容版本
这是最简单的修复方式,直接执行以下命令即可:
pip install setuptools==57.5.0 pip install icount
方案2:手动修改源码安装
如果不想降级全局的setuptools,可以手动修改配置后安装:
- 下载iCount 2.0.0源码包:
wget https://files.pythonhosted.org/packages/87/1b/785202907a94d2c2968727a48bac503f03e236f5b11bcc31bc2a0c3ab826/iCount-2.0.0.tar.gz - 解压源码包:
tar -zxvf iCount-2.0.0.tar.gz - 进入解压后的目录,打开
setup.py文件,找到install_requires配置项,将它的值从集合类型改为列表类型(把外层的{}改成[]即可) - 执行手动安装命令:
python setup.py install
方案3:使用兼容的Python版本虚拟环境
iCount 2.0.0官方仅支持Python 3.6及更低版本,如果你使用的Python版本高于3.6,建议创建专属虚拟环境安装:
- 创建Python 3.6虚拟环境(以conda为例):
conda create -n icount_env python=3.6 - 激活虚拟环境:
conda activate icount_env - 执行安装命令:
pip install setuptools==57.5.0 && pip install icount
内容的提问来源于stack exchange,提问作者user12006540
相关产品推荐
相关产品推荐

