如何避免 MacPorts 与 /usr/local 冲突

如何避免 MacPorts 与 /usr/local 冲突

由于 MacPorts 与 /usr/local * 不兼容,因此每当我使用 MacPorts 安装/更新端口时,我都会

sudo mv /usr/local /usr/local.bak

在我完成 MacPorts 的构建之后

sudo mv /usr/local.bak /usr/local

这种方法有效,解决了许多之前难以理解的构建错误。但是这种方法非常麻烦,有时我会忘记执行此操作,无论是“之前”步骤还是“之后”步骤,然后不得不在之后进行修复。

有没有更好的方法来避免这种冲突?

/usr/local编辑 * 请参阅这些链接以获取有关临时移动作为解决 MacPort 构建问题的解决方案的示例/建议。

https://stackoverflow.com/questions/1827377/install-git-core-svn-fails-with-macport

https://trac.macports.org/ticket/21649

https://trac.macports.org/ticket/29998

答案1

我不明白/usr/local你在说什么冲突。MacPorts 有意使用自己的/opt层次结构,以避免与 中已有的任何内容发生冲突。除非你更改了它的配置,否则/usr/local它不应该放入任何东西。/usr/local

/usr/local您是否考虑过 Homebrew?我相信 Homebrew 仍然默认将内容放入,而 MacPorts 使用/opt,Fink 使用/sw

因此,我猜“避免这种冲突的更好方法”是使用 MacPorts 而不是 Homebrew,并将 MacPorts 设置为其默认前缀/opt

相关内容