【问题标题】:Running homebrew while in a virtualenv在 virtualenv 中运行自制软件
【发布时间】:2014-04-18 05:10:33
【问题描述】:

简单问题:在 virtualenv 中运行 homebrew 是个坏主意吗?

如果是这样,有什么方法可以在每次运行自制命令时自动停用 virtualenv?我不相信自己总是记得停用 virtualenv 或打开一个新的终端窗口。

【问题讨论】:

    标签: python macos virtualenv homebrew


    【解决方案1】:

    因为我自己刚刚在documentation 中遇到过这个问题,所以通常从活动的virtualenv 到brew install 可能会更好。引用上述文档:

    警告:当您 brew install 提供 Python 绑定的公式时,您不应处于活动的虚拟环境中。

    冲泡后激活 virtualenv,或在新的终端窗口中冲泡。 Homebrew 仍会将 Python 模块安装到 Homebrew 的站点包中,而不是虚拟环境的站点包中。

    Virtualenv 有一个开关,允许从 virtualenv 中访问“全局”(即 Homebrew 的)站点包。

    因此,如果您确定您正在酝酿的公式不会尝试提供新的 Python 绑定,那么就让它崩溃吧。但对我来说,如果在激活我的虚拟环境的情况下没有具体原因brew install,我会尽量记住事先deactivate

    【讨论】:

      【解决方案2】:

      我不认为它们是否相关。使用 virtualenv 时必须使用 pip 进行 python 包管理。这样你就可以确保你的新东西在你创建的沙箱上。 AFAIK home-brew 在全球范围内安装东西。所以最好不要用它来获取python模块。希望对您有所帮助。

      【讨论】:

      • 好的,这是计划,但是运行brew doctor 之类的命令,然后在 virtualenv 中解决问题仍然可以吗?
      • 是的,应该没问题。它们是全局固定的,与您的沙箱无关。您可以随时使用“点子列表”查看您拥有哪些库和版本。 (如果您在沙盒中,它会显示沙盒中可供您使用的内容)
      猜你喜欢
      • 2014-11-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-08
      • 2013-09-28
      • 1970-01-01
      相关资源
      最近更新 更多