解决方法来源:
https://github.com/librosa/librosa/issues/711
原因:
使用底层工具 distutils安装的自带package,缺失了文件列表信息,导致无法根据文件列表卸载旧版,无法替换旧版文件,无法干净地升级,所以python拒绝安装或者升级某个package。
现状:
遗留问题,深层bug,官方无法漂亮地解决
解决方案:
手动删除这个包,再用pip或者conda安装,新的版本就都会带有完整的文件列表信息了。
如何手动删除:
- 找到你的python包库,
- 查看方法: pip -V 回车(大写V)
- 进入库目录 xxx/site-packages/
- 找到要卸载的旧版包,比如旧版的llvmlite
- llvmlite/
- llvmlite-0.27.1_0.gf008359.dirty-py3.6.egg-info
- 把它们删除,或者重命名:
- llvmlite-bak/
- llvmlite-0.27.1_0.gf008359.dirty-py3.6.egg-info-bak
- 之后即可正常安装新版的llvmlite,或任何你删除干净的其他包。