安装requirements.txt时pyzmq提示wheel无效存在多个.dist-info目录如何解决
报错原因
该报错是由于本地pip缓存中的pyzmq 18.1.0版本wheel包存在打包缺陷,打包时错误将libsodium的.dist-info目录一并打入了安装包,导致pip校验时识别到多个元信息目录,判定wheel包无效。
之前的操作未生效是因为没有彻底清理环境中残留的无效pyzmq安装文件、缓存文件,导致pip每次安装时依然调用了损坏的安装资源。
解决方案
- 第一步:卸载环境中已有的pyzmq、libsodium残留
pip uninstall -y pyzmq libsodium - 第二步:清空pip全局缓存,彻底清除损坏的安装包文件
pip cache purge
若执行上述命令提示无cache命令,先执行pip install --upgrade pip升级pip到最新版本后重试 - 第三步:单独强制重新安装指定版本的pyzmq
pip install pyzmq==18.1.0 --force-reinstall
若指定版本安装失败,可尝试安装同大版本下的更高兼容版本,执行pip install pyzmq>=18.1.0,<19.0即可 - 第四步:验证pyzmq安装成功后,再安装requirements.txt中的剩余依赖
pip install -r requirements.txt
如果是在虚拟环境中操作,优先删除原有虚拟环境,重建干净的虚拟环境后再执行上述步骤,可大幅降低环境残留带来的干扰
内容的提问来源于stack exchange,提问作者raha
相关产品推荐
相关产品推荐

