【发布时间】:2012-02-11 15:57:38
【问题描述】:
如何同时使用 macports 和 homebrew 包管理系统,而不会让它们相互干扰?
【问题讨论】:
标签: macos installation macports homebrew package-managers
如何同时使用 macports 和 homebrew 包管理系统,而不会让它们相互干扰?
【问题讨论】:
标签: macos installation macports homebrew package-managers
最好只使用一个包管理器并卸载其他包管理器。例如,如果您想使用 MacPorts,但您需要的程序不在 MacPorts 中,请考虑 filing a MacPorts port request ticket。
如果您坚持必须安装多个包管理器,那么请将它们全部安装在非标准前缀中。 MacPorts 的默认前缀是 /opt/local。 Homebrew 默认为 /usr/local。 Fink 使用 /sw。手动从源代码构建每个包管理器,为每个包选择一个唯一的安装前缀,该前缀不同于前面所有的默认路径。这是为了确保对这些包管理器的默认路径具有硬编码知识的软件包不会无意中从错误的包管理器中找到依赖项。
当您使用 MacPorts 安装端口时,它会清除大多数环境变量;这是为了确保即使您在 $PATH 中有 /usr/local/bin 和 /sw/bin,MacPorts 也不会在那里找到东西。我不知道 Homebrew 和 Fink 是否也这样做。如果没有,请更改您的$PATH,使其不包含具有潜在第三方依赖项的位置,然后再使用 Homebrew 或 Fink 安装任何内容。
【讨论】: