如何使用pip卸载可编辑软件包(使用-e安装)

我用-e安装了一些软件包

> pip install -e git+https://github.com/eventray/horus.git@2ce62c802ef5237be1c6b1a91dbf115ec284a619#egg=horus-dev 

我用点滴冻结我看到

 > pip freeze ... -e git+https://github.com/eventray/horus.git@2ce62c802ef5237be1c6b1a91dbf115ec284a619#egg=horus-dev ... 

当我尝试卸载软件包时出现错误:

 > pip uninstall horus-dev Cannot uninstall requirement horus-dev, not installed > pip uninstall horus Cannot uninstall requirement horus, not installed 

我如何卸载这样的软件包?

{virtualenv}/lib/python2.7/site-packages/ (如果不使用virtualenv,那么{system_dir}/lib/python2.7/dist-packages/

  • 删除蛋文件(如distribute-0.6.34-py2.7.egg ),如果有的话
  • easy-install.pth文件中删除相应的行(它应该是源目录或egg文件的path)。

事实certificate,我的安装不知何故腐败。

我可以在以下位置find条目:

 /usr/local/lib/python2.7/site-packages/easy-install.pth 

为了解决这个问题,我用手去除了.pth文件中的一行!

 import sys; sys.__plen = len(sys.path) ... /absolute-path-to/horus # <- I removed this line ... 

只需卸载以“可编辑”模式安装的软件包:

 pip uninstall yourpackage 

安装一个开发包使用cmd:

 pip install --editable . 

卸载:

 rm -r $(find . -name '*.egg-info') 

这是使用操作系统安装的pip(v8.1.1)的debian / ubuntu linux上的一个bug,即使你已经升级了pip(比如get-pip.py),你也会用sudo pip调用它。 请参阅https://github.com/pypa/pip/issues/4438

有关如何清理的讨论,请参阅https://askubuntu.com/questions/173323/how-do-i-detect-and-remove-python-packages-installed-via-pip ,尽pipe解决scheme有“删除一切”变化。

… pip软件包[转到] /usr/local/lib/python2.7/dist-packages ,并将软件包转换为/usr/lib/python2.7/dist-packages

…几个软件包也安装在~/.local/lib

对于我的系统,我需要删除的是/usr/local/lib/python2.7/dist-packages/{package_name}.egg-link