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

时间:2013-06-27 14:58:51

标签: pip uninstall

我已经使用-e

安装了一些软件包
> pip install -e git+https://github.com/eventray/horus.git@2ce62c802ef5237be1c6b1a91dbf115ec284a619#egg=horus-dev

我用pip冻结我看到了

> 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

如何卸载此类软件包?

7 个答案:

答案 0 :(得分:65)

{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文件的路径)。

答案 1 :(得分:5)

使用cmd安装开发包:

pip install --editable .

卸载:

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

答案 2 :(得分:3)

事实证明我的装置有点腐败。

我可以在以下网址找到该条目:

/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
...

答案 3 :(得分:3)

这是使用操作系统安装的pip(对我来说是v8.1.1)的debian / ubuntu linux上的一个错误,即使你已经升级了pip,你也可以使用sudo pip调用它(例如get-pip)的.py)。见https://github.com/pypa/pip/issues/4438

有关如何清理的讨论请参阅https://askubuntu.com/questions/173323/how-do-i-detect-and-remove-python-packages-installed-via-pip,尽管解决方案中有“删除所有内容”的类型。

  

... pip包[go]到/usr/local/lib/python2.7/dist-packages,apt包到/usr/lib/python2.7/dist-packages

     

... ~/.local/lib也安装了一些软件包。

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

答案 4 :(得分:2)

使用新版本的setup_tools进行此操作的更简单方法是运行以下命令:

python setup.py develop -u

与@glarrain的回答基本相同。

答案 5 :(得分:1)

以防其他任何人: 不知道这是否是相同的问题,但是我遇到了类似的问题,我在本地安装了一个软件包以供开发:

$ pip install -e .

但是当我跑步

$ pip uninstall -e .

我知道了

Usage:   
  pip uninstall [options] <package> ...
  pip uninstall [options] -r <requirements file> ...

no such option: -e

当我运行pip freeze时,我会得到

package1=1.0.0
package2=1.0.0
...
package12=1.0.0
-e git+git@github.com/me/my-repo.git@hash
package13=1.0.0
...

因此我将其转储到requirements.txt,除去了-e行之外的所有内容,然后执行:

$ pip uninstall -r requirements.txt

对我有用的

答案 6 :(得分:-3)

只需卸下您在“可编辑”中安装的软件包即可。模式:

pip uninstall yourpackage