Brew doctor报告如下:
警告:/usr/local/include目录不可写。如果您“sudo make install”软件而该软件并非由Homebrew管理,则会发生这种情况。
如果brew尝试将头文件写入此目录,则在链接步骤期间安装将失败。
您应该使用
chown
命令更改/usr/local/include目录的所有者。
我已经尝试了不同的命令来解决这个问题,但我仍然卡在这里。
我正在10.8.2上运行homebrew。
Brew doctor报告如下:
警告:/usr/local/include目录不可写。如果您“sudo make install”软件而该软件并非由Homebrew管理,则会发生这种情况。
如果brew尝试将头文件写入此目录,则在链接步骤期间安装将失败。
您应该使用
chown
命令更改/usr/local/include目录的所有者。
我已经尝试了不同的命令来解决这个问题,但我仍然卡在这里。
我正在10.8.2上运行homebrew。
请为我工作
$ sudo chown -R $(whoami):admin /usr/local
$ cd /usr/local/Library && git stash && git clean -d -f
在 MacOS 10.13 上出现了同样的错误。
/usr/local/include
和 /usr/local/
/usr/lib
没有被创建。我手动创建了这些目录并且 brew link
最终起作用了。
当我在计算机上有多个用户时,以下方法适用于我。
使用终端:
brew doctor
/usr/local/...
无法写入的错误sudo chown -R $(whoami) /usr/local/*
brew doctor && brew upgrade && brew doctor
运行Macbook Pro OSX High Sierra(版本10.13.3)。
编辑1:
请注意,这会导致在MAC上运行MySQL出现问题。
为了能够启动我的本地服务器,我必须运行:
sudo chown -R mysql:mysql /usr/local/mysql/data
运行此命令后,您可以启动本地MySQL服务器。
如果它们不存在,您需要创建 /usr/local/include 和 /usr/local/lib:
$ sudo mkdir -p /usr/local/include
$ sudo chown -R $USER:admin /usr/local/include
sudo mkdir -p /usr/local/include /usr/local/lib /usr/local/sbin
sudo chown -R $(whoami) /usr/local/include /usr/local/lib /usr/local/sbin
这将创建所有必需的目录并给它正确的所有权。
运行这些命令后,请使用:brew doctor
进行检查。
此方法适用于Mojave。
您需要掌控整个 /usr/local
目录,为此您需要在 /usr/local
下递归执行 chown
命令。
sudo chown -R YOUR_USERNAME:admin /usr/local/
chown -R $(whoami):admin /usr/local/bin
ll /usr/local/Cellar
找到旧的用户ID。sudo find /usr/local -user 501 -exec chown -h $USER {} \;
这样,我们就避免了更改不受homebrew控制或属于其他系统用户的文件所有权。