【发布时间】:2016-10-22 19:56:15
【问题描述】:
我创建了一个 python 模块,称之为 'foo_bar'。
我可以安装它,我可以升级它,但我无法卸载它。
我使用 bdist_wheel 构建我的模块:
$ python3 setup.py bdist_wheel
我按如下方式安装和升级它:
$ python3 -m pip --timeout 60 install --upgrade dist/foo_bar-1.4.3-py3-none-any.whl
它在 Python 3.4 框架目录中列出:
ls -al /Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/
drwxr-xr-x 12 samwise admin 408 Jun 21 02:50 foo_bar
drwxr-xr-x 9 samwise admin 306 Jun 21 02:50 foo_bar-1.4.3.dist-info
它在 pip freeze 中列出:
$ python3 -m pip freeze
foo-bar==1.4.3
但是,如果我尝试执行 pip 卸载,它找不到它的文件
$ python3 -m pip uninstall foo-bar
Can't uninstall 'foo-bar'. No files were found to uninstall.
我在 setup.py 中做错了什么,导致在卸载期间无法找到我的模块文件吗?
版本信息如下:
$ python3 --version
Python 3.4.4
$ python3 -m pip --version
pip 8.1.2 from /Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages (python 3.4)
【问题讨论】:
-
您是否尝试在您的库文件中删除它?也许它有效
-
是的,我可以使用
rm -fR执行硬删除,但这似乎不是执行uninstall的正确方法。我打算在pypi上公开这个模块,如果不能正确卸载,那么这对python社区不利。 -
@jeff00seattle 你有没有找到解决办法?
-
对我来说,使用
sudo解决了问题 -
我想知道使用纯字母名称时是否会出现同样的问题。我总是被告知,非常不鼓励使用连字符的包名称,尤其是为了避免混淆或使用问题。
标签: python-3.x pip uninstallation python-wheel