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

創建 asudo chown -R $(whoami):admin /usr/local將破壞可能存儲在/usr/local子資料夾下的任何代理,該子資料夾必須屬於root:wheel.

注意:在 El Capitan 中,是為其及其子資料夾設定的root:wheel預設值。user:group/usr/local

此外,人們可能擁有第 3 方核心擴展,這些擴展也必須具有root:wheel權限(例如防毒軟體),否則 OS X 將阻止它們載入。

所以設定/usr/local$(whoami)絕對是最糟糕的主意。

相關內容