在安装tig时,HomeBrew在安装依赖项时显示以下问题:

Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink bin/a2x
/usr/local/bin is not writable.

You can try again using:
  brew link asciidoc

当前回答

这是因为当前用户不允许在该路径中写入。因此,要更改r/w(读/写)权限,您可以使用1。Terminal,或者2。图形化“获取信息”窗口。

1. 使用终端

谷歌如何从终端使用chmod/chown(改变模式/改变所有者)命令

2. 使用图形化的“获取信息”

你可以右键单击你想要更改权限的文件夹/文件,然后打开获取信息,它会显示一个如下所示的窗口,在底部你可以轻松地更改r/w权限:

如果可能的话,请在临时工作结束后将权限更改为“只读”

其他回答

如果您已经在/usr/local中为正在安装的包创建了一个目录,您可以尝试删除这个目录。

在我的情况下,我之前安装了我试图安装的包,没有使用brew,然后卸载了它。之前的安装留下了一个目录/usr/local/<my_package>/。我删除了这个文件夹(sudo rm -rf /usr/local/<my_package>/),之后酿造链接步骤成功。

我发现以下与Sophos反病毒用户相关:

https://stackoverflow.com/a/32981184

https://community.sophos.com/products/free-antivirus-tools-for-desktops/f/17/t/10029

简而言之,Sophos正在更改某些/usr/local目录的权限。Sophos已经对此进行了修补,该修复包含在9.4.1版本中。

与其运行任何特定的命令,我建议运行brew doctor并认真对待所有警告。你可能会遇到其他问题,而这些问题在这个问题中可能没有体现出来。

此外,随着brew的更新,某些命令可能仍然有效,也可能不有效。然而,酿造医生将确保您获得最新的故障排除。

对我来说,解决方案是运行brew update。

所以,先做这个。

对于熟悉自制啤酒的人来说,这可能是正常的做法,但我不是这样的人。

编辑:我发现我需要通过运行brew doctor来更新,这是@kinnth对同一问题的回答所建议的。

一般的故障排除工作流可能是这样的: 1. 运行brew更新 2. 如果这对运行brew doctor没有帮助,就按照它的指示去做 3.如果这对检查堆栈溢出没有帮助的话

我发现了同样的问题,我们可以分三步解决:-

步骤1

sudo chown -R $(whoami) $(brew --prefix)/*

步骤2

brew doctor

步骤3

brew prune or brew cleanup

如果你仍然遇到任何链接问题,比如说mysql,就写

brew link mysql

这是可行的。