安装Homebrew软件包而不链接


16

我想安装几个版本的Ruby(或实际上是任何Homebrew软件包)而不链接其中任何一个。基本上,我想将任何公式视为仅桶装。

尽管看起来很琐碎,但我似乎找不到解决方法。我以为会有这样的事情brew install --no-link <formula>

有什么方法可以做我想做的事,还是某种原因导致这个主意不好?

我真的很想使用Homebrew来安装Ruby版本,并使用rbenv来管理它们。


是的,这真的很方便,我也找不到任何答案。
Aron Ahmadia 2013年

我认为缺少此功能是Homebrew对版本普遍支持不佳的征兆。您总是会获得最新版本,而获得较旧版本的唯一方法是希望有人将其复制到版本桶中,或者在git历史记录中搜寻。太多的东西应该是简单的命令行参数,但只能通过来实现brew edit
Mark Reed

Answers:


10

您所要做的就是编辑默认公式并针对您的目的对其进行自定义,这仅适用于小桶。制作自己定制的公式版本非常容易,一旦您编辑了公式,Homebrew就会保留您的个性化版本以备将来使用。

因此,只需编辑公式文件(针对您要安装的特定Tap版本)并keg_only "My reason for making this keg-only"在公式类中添加,例如在desc命令后的新行中。

如果您以前没有编辑过公式,请阅读 Homebrew常见问题解答中的以下几行内容,以了解如何进行编辑:

我可以自己编辑公式吗?

是! 这简单!只是brew edit $FORMULA。您无需将修改提交回Homebrew / homebrew,只需根据个人需要编辑公式即可brew install。作为奖励,brew update您的更改将与上游合并,因此您仍然可以通过个人修改使公式保持最新 !


0

您可以运行brew install <formula>,然后运行brew unlink <formula>,这将删除所有链接。


是的,但是仍然可以链接Ruby,如果已经链接了一个版本,它将失败。我想没有安装的链接。
同样

0

我不确定Ruby,但是要对许多软件进行此操作,您可能只想下载源代码并调整make文件,或者使用autoconf configure脚本的标志来指定所需的安装目录,然后您可以从那里运行它。

(From configure --help output)
Installation directories:
  --prefix=PREFIX         install architecture-independent files in PREFIX
                          [/usr/local]
  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
                          [PREFIX]
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.