【问题标题】:How to reverse system-wide installation of Flask如何逆转 Flask 的系统范围安装
【发布时间】:2013-06-03 21:04:12
【问题描述】:

所以我创建了一个虚拟环境但忘记激活它。然后我跑了pip install flask,以为我在新的virtualenv中。这返回了一个拒绝权限错误,所以我在前面加上sudo 再次运行它。不久之后,我意识到我做了什么。我在这里快速搜索了一下,发现this question。但是,当我运行 sudo pip uninstall flask(如该链接中所建议的那样)时,我得到了回复“无法卸载 'Flask'。没有找到要卸载的文件。”

我是否真的在系统范围内安装了它?如果是这样,为什么当我尝试卸载它时它会告诉我这个,以及我如何实际反转这个系统范围的安装?

提前致谢

【问题讨论】:

  • 您是否检查过初始安装是否确实成功?你能打开python解释器并输入“import flask”
  • 如果 flask 不是正确的包名称,pip installpip uninstall 做的猜测要多得多。

标签: python flask virtualenv uninstallation


【解决方案1】:

您无法使用 pip 卸载,这很奇怪...但是,如果需要,您始终可以手动删除:

  • 转到您的 python 安装sites-packages 目录。如果您不知道它在哪里,一个简单的方法是运行以下命令:

    >>> import flask
    >>> flask.__file__
    
  • 删除里面的flask目录,以及可能存在的Flask-0.9-py2.7.egg-info

【讨论】:

  • 在我的 python2.7 目录中,我有 site-packages/ 和 dist-packages/ 但 site-packages/ 是空的。另一方面, dist-packages/ 具有您提到的两个目录。从这里删除它们是否安全?
  • 我不熟悉这个目录布局。 flask.__file__ 告诉你了吗?是从这里进口的吗?
  • 哦,显然,dist-packages is just a Debian specificity,所以你可以安全地从中取出烧瓶。
  • 我刚刚发现了这个:*.com/questions/9387928/… 这使得它们看起来像是同一种目录,但是 Ubuntu(我正在运行)安装到 dist- 而不是站点-