“酿造链接”是做什么的?

当我运行 brew doctor时,我得到一个常见的警告:

Warning: You have unlinked kegs in your Cellar
Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
those kegs to fail to run properly once built. Run `brew link` on these:
# [...]

啤酒桶被解开意味着什么? brew link到底做了什么?

111555 次浏览

brew link creates symlinks to installations you performed manually in Cellar. This allows you to have the flexibility to install things on your own but still have those participate as dependencies in homebrew formulas.

See the FAQ for more information.

You should follow those instructions and run brew link on the entries it lists.

Homebrew can allow multiple versions of a formula to be installed. For example, there is formulae called node and node@10 and similar.

$ brew info node@10
...
==> Caveats
node@10 is keg-only, which means it was not symlinked into /usr/local,
because this is an alternate version of another formula.

If I have both node and node@10 installed, where node is at v11. I can decide later to active the earlier version with brew link:

$ brew unlink node


$ brew link node@10


$ cd /urs/local/bin
$ ls -l node
lrwxr-xr-x  1 user  admin  34 12 Dec 20:07 node -> ../Cellar/node@10/10.14.1/bin/node

Here the symlink node is pointing to an earlier version (keg-only) installed in Cellar.