【问题标题】:How to switch entirely from pip to brew如何完全从 pip 切换到 brew
【发布时间】:2016-04-25 07:39:39
【问题描述】:

我在其他地方读到 brew 是一个比 pip 安装包更好的选择(实际上我在安装 Python 包时遇到的问题比使用 pip 少)。问题是当我运行时

brew update && brew outdated && brew upgrade --all

然后

pip-review -a

似乎相同的软件包安装了两次(例如matplotlibscipy 等)。 如何摆脱 pip 并完全切换到 brew,以避免双重安装和潜在冲突?

【问题讨论】:

  • 这个“其他地方”是否告诉我们该怎么做?
  • PyPi 是 pip 挂接的标准包索引; brew 包通常必须专门为 brew 创建和维护。是否有 brew 插件可以直接连接到 PyPi?否则,这似乎是一个极其低劣的解决方案。

标签: python pip homebrew


【解决方案1】:

你不能那样做。你不能期望所有的 python 包都可以通过 brew 获得。

pip 是 python 包管理器,通过查询名为PyPI 的 python 包远程服务器来了解如何安装 python 包。

另一方面,Brew 是适用于 Mac 的通用软件安装系统。它之所以存在,只是因为 Apple 懒得提供一个好的包管理器和包管理系统来在 Apple 上安装 Unix/Mac 软件。 brew 上存在许多 Python 包,因为志愿者不厌其烦地将其转换为 brew formulae。但它当然不能保证 brew 包到 pip 可安装包的 100% 1-1 映射。

【讨论】:

  • 在这个答案中是否有必要抨击固执己见的苹果?
  • 我不知道。我想,我首先需要说明 brew 存在的原因。我也是苹果迷,喜欢他们的产品!
  • 支持或反对提供、维护和支持包分发系统的决定有很多原因。 “懒惰”可能是苹果公司反对这样做的最不重要的原因。实际上,对于所有相关人员来说,让第 3 方填补这一空白要比让 Apple 提供一个系统更好无论如何。
  • 也许有人可以提供一个一致性检查器来监控磁盘并说“在这里你安装了两次相同的包,我建议你去 pip 并冲泡它”或相反(“de-冲泡并点它”)。每次我更新 brew 和 pip 时,我担心我最终会得到不兼容的配置......
  • 注意它叫做“自制”,brew 只是它的命令。
【解决方案2】:

您仍然想使用pip,您应该使用 Homebrew 的副本,而不是其他一些变体。 Homebrew 的 pip 副本是 python 包的一部分,所以如果您 brew install python 您将拥有 pip 的所有设置并准备就绪。

要清理任何非 Homebrew 提供的 pip 包,只需直接删除模块所在的文件夹即可。例如,如果您手动安装了pip,则模块可能存储在/Library/Python/2.7/site-packages 下的某个地方。

【讨论】:

    猜你喜欢
    • 2021-06-27
    • 1970-01-01
    • 2021-07-17
    • 2021-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多