jef*_*tle 6 uninstall pip python-3.x python-wheel
我创建了一个python模块,称之为'foo_bar'.
我可以安装它,我可以升级它,但我无法卸载它.
我使用bdist_wheel构建我的模块:
$ python3 setup.py bdist_wheel
Run Code Online (Sandbox Code Playgroud)
我按如下方式安装和升级它:
$ python3 -m pip --timeout 60 install --upgrade dist/foo_bar-1.4.3-py3-none-any.whl
Run Code Online (Sandbox Code Playgroud)
它列在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
Run Code Online (Sandbox Code Playgroud)
它在pip冻结中列出:
$ python3 -m pip freeze
foo-bar==1.4.3
Run Code Online (Sandbox Code Playgroud)
但是,如果我尝试执行pip uninstall,则无法找到它的文件
$ python3 -m pip uninstall foo-bar
Can't uninstall 'foo-bar'. No files were found to uninstall.
Run Code Online (Sandbox Code Playgroud)
我在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)
Run Code Online (Sandbox Code Playgroud)
Oli*_*erM 22
我遇到过同样的问题。使用verbose帮助我找到了更多原因:
$ pip3 uninstall --verbose my-homemade-package
Not sure how to uninstall: my-homemade-package e48e635 - Check: /home/olivier/my-homemade-package
Can't uninstall 'my-homemade-package'. No files were found to uninstall.
Run Code Online (Sandbox Code Playgroud)
删除与“我的自制包”相关的所有内容/usr/local/python2.x并/usr/local/python3.x没有帮助。
我做了一个pip3 show my-homemade-package并得到了我电脑上安装包的位置:
$ pip3 show my-homemade-package
Name: my-homemade-package
Version: e48e635
Summary: My Home Made package
Home-page: UNKNOWN
Author: UNKNOWN
Author-email: UNKNOWN
License: Proprietary
Location: /home/olivier/my-homemade-package
Requires: pyOpenSSL, pyasn1, protobuf
Run Code Online (Sandbox Code Playgroud)
删除/home/olivier/my-homemade-package解决了问题(即:未列出包)。
Mic*_*ael 16
所以我也遇到了和OP类似的问题。我可以使用pip install dist/mypackage.tar.gz. 安装本来可以正常工作,但最后会显示Can't uninstall 'mypackage'. No files were found to uninstall.,并且pip uninstall mypackage后来确实无法工作。
这听起来很愚蠢,但对我有用的是更改工作目录:一旦我离开mypackage/目录,pip uninstall mypackage就可以工作了。
当我重命名我的模块时,我遇到了这样的问题setup.py。
旧old_name.egg-info目录仍然存在于my_module目录中。因此,当我使用pip install -e .pip 安装模块时,创建了一行python3.8/site-packages/easy-install.pth指向模块目录的行。pip list之后该模块以两个名称列出:new-name和old-name。当我尝试使用pip remove old-namepip 删除旧模块时显示错误:
Found existing installation: old-name 0.3.0
Can't uninstall 'old-name'. No files were found to uninstall.
Run Code Online (Sandbox Code Playgroud)
解决方案是从模块目录中删除目录old_name.egg-info。之后pip list仅显示new-name.
可能这不是对原始帖子的直接回答,而是主题名称中问题的解决方案之一。
小智 5
这是一个旧帖子,但它是谷歌的最高结果。上面的答案是正确的,但是,在我的情况下,仍然有一行 /usr/local/lib/python3.6/site-packages/easy-install.pth 在删除了egg文件之后我必须删除它。
| 归档时间: |
|
| 查看次数: |
4344 次 |
| 最近记录: |