Homebrew не устанавливает новые приложения в El Capitan

Homebrew не устанавливает новые приложения в El Capitan

только что обновился до бета-версии El Capitan для разработчиков.

Deniss-MBP:src me$ brew install hg
Warning: You are using OS X 10.11.
We do not provide support for this pre-release version.
You may encounter build failures or other breakage.
==> Downloading https://mercurial.selenic.com/release/mercurial-3.4.2.tar.gz
Already downloaded: /Library/Caches/Homebrew/mercurial-3.4.2.tar.gz
==> make PREFIX=/usr/local/Cellar/mercurial/3.4.2 install-bin
#include <stdio.h>
         ^
1 error generated.
error: command 'clang' failed with exit status 1
make: *** [build] Error 1

READ THIS: https://git.io/brew-troubleshooting

Warning: You are using OS X 10.11.
We do not provide support for this pre-release version.
You may encounter build failures or other breakage.

Есть идеи, как это сделать?

Примечание: Когда я brew doctorэто делаю, он говорит:

Warning: Your Xcode (6.3.2) is outdated
Please update to Xcode 7.0.
Xcode can be updated from
  https://developer.apple.com/downloads

Но у меня на компьютере установлен xcode-beta 7. Не уверен, что это связано. На всякий случай

решение1

Для начала я рекомендую вам ознакомиться с этим: https://www.reddit.com/r/apple/comments/3994os/rootless_feature_is_in_os_x_1011_and_it_disallows/

Безопасность без рута изменила многое в El Capitan, кроме этого, куда вы xcode-selectуказываете? Вы можете использовать xcode-select -h, чтобы увидеть использование, это очень просто.

решение2

ПроверитьEl Capitan и домашнее пиво:

Если /usr/localуже существует:

sudo chown $(whoami):admin /usr/local && sudo chown -R $(whoami):admin /usr/local

Если /usr/localне существует:

  • Перезагрузитесь в режим восстановления (удерживайте Cmd+R при загрузке) и откройте Терминал.
  • В этом терминале выполните:csrutil disable
  • Перезагрузитесь обратно в OS X.
  • Откройте приложение «Терминал» и выполните:

    sudo mkdir /usr/local && sudo chflags norestricted /usr/local && sudo chown $(whoami):admin /usr/local && sudo chown -R $(whoami):admin /usr/local
    
  • Перезагрузитесь обратно в режим восстановления и снова войдите в Терминал.

  • В этом терминале выполните:csrutil enable
  • Перезагрузитесь обратно в OS X, и вы сможете записать /usr/localи установить Homebrew.

решение3

Создание sudo chown -R $(whoami):admin /usr/localприведет к поломке любых агентов, которые могут храниться в /usr/localподпапках, владельцами которых должны быть root:wheel.

Примечание: в El Capitan root:wheel— это папка по умолчанию user:group, которая установлена ​​для /usr/localи ее подпапок.

Кроме того, у пользователей могут быть сторонние расширения ядра, которые также должны иметь root:wheelразрешения (например, антивирусное программное обеспечение), в противном случае OS X не позволит их загрузить.

Так что установка /usr/localна это $(whoami)— определенно худшая идея.

Связанный контент