如何使用pip3或其他方式干净地卸载我的Python包?

26

以下是我的setup.py文件,用于安装我的Python程序。使用python3 setup.py install进行安装后,会创建一个名为testmain的程序入口。当我运行pip3 freeze命令时,它在输出中显示abc==0.1,因此我使用pip3 uninstall abc卸载了它。尽管已经卸载了软件包,但还存在在我的路径上存在testmain入口。是否有一种方法可以使pip3在卸载时也删除该入口,或者有其他方法可以在相同情况下干净地卸载我的程序吗?

from setuptools import setup

setup(name='abc',
      version='0.1',
      description='test',
      url='http://github.com/rjdp',
      author='rajdeep',
      author_email='rajdeep.sharma@rtcamp.com',
      license='MIT',
      packages=['cli'],
      install_requires=[
      'cement',
      ],
      entry_points = {
      'console_scripts': ['testmain=cli.abc:main'],
      },
      zip_safe=False)
1个回答

45

不要使用python3 setup.py install,而要使用:

pip3 install .

那么

pip3 uninstall abc

这将删除testmain。

今天我也有同样的问题,整个上午我都在试图弄清楚为什么脚本无法卸载。 直到我看到Ramana在这里的答案才起作用:https://askubuntu.com/questions/38692/how-does-one-remove-applications-installed-through-python-setup-py-install

"您应该始终使用" pip "安装Python应用程序。pip支持卸载选项。"和评论中支持本地路径的示例。


1
不幸的是,这个不能包含二进制文件,在 pip 安装期间使用 gcc 编译。 - Stepan Yakovenko

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接