在安装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

当前回答

我发现对于我的特定设置,以下命令是有效的

brew doctor

然后它告诉我我的错误在哪里,然后这个与上面的注释略有不同的命令。

sudo chown -R $(whoami) /usr/local/opt

其他回答

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

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

我发现以下与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版本中。

根据Alex的回答,我能够解决这个问题;似乎这是一个问题,不特定于软件包正在安装,但自制文件夹的权限。

sudo chown -R `whoami`:admin /usr/local/bin

对于某些包,你可能还需要对/usr/local/share或/usr/local/opt执行这个操作:

sudo chown -R `whoami`:admin /usr/local/share
sudo chown -R `whoami`:admin /usr/local/opt

我发现对于我的特定设置,以下命令是有效的

brew doctor

然后它告诉我我的错误在哪里,然后这个与上面的注释略有不同的命令。

sudo chown -R $(whoami) /usr/local/opt

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

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