当我在终端运行brew
时,我得到一个错误:
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- utils/popen (LoadError)
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/local/Library/Homebrew/utils.rb:6:in `<top (required)>'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/local/Library/Homebrew/global.rb:9:in `<top (required)>'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/local/Library/brew.rb:16:in `<main>'
以下是我的gem设置:
- RUBYGEMS VERSION: 2.0.14
- RUBY VERSION: 2.0.0 (2014-02-24 patchlevel 451) [universal.x86_64-darwin13]
- INSTALLATION DIRECTORY: /Library/Ruby/Gems/2.0.0
- RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby
- EXECUTABLE DIRECTORY: /usr/bin
- RUBYGEMS PLATFORMS:
- ruby
- universal-darwin-13
- GEM PATHS:
- /Library/Ruby/Gems/2.0.0
- /Users/ronaldkwan/.gem/ruby/2.0.0
- /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/gems/2.0.0
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
发布于 2016-02-19 09:48:14
原始答案
该问题主要发生在将OS X更新到El Capitan (OS X 10.11)或macOS Sierra (macOS 10.12)之后。
这是因为El Capitan或更高版本的macOS的new SIP process存在文件权限问题。尝试更改/usr/local
目录的权限:
$ sudo chown -R $(whoami):admin /usr/local
如果它仍然不起作用,那么在终端会话中使用以下步骤,一切都会好起来的:
cd /usr/local/Homebrew
git reset --hard origin/master
brew update
如果/usr/local/Library/Homebrew
不起作用,可以试试/usr/local/Homebrew
。问题可能是Homebrew已经过时了。
Apr 2021更新
上面的命令不适用于macOS高山或更高版本,如本GitHub issue中所述。你必须运行下面的代码:
sudo chown -R $(whoami) $(brew --prefix)/*
发布于 2014-07-17 03:31:07
首先,打开终端会话并运行:
cd /usr/local/
git status
看看家酿是不是干净的。
如果它是脏的,请运行:
git reset --hard && git clean -df
然后
brew doctor
brew update
如果它仍然是坏的,在你的会话中试试这个:
sudo rm /System/Library/Frameworks/Ruby.framework/Versions/Current
sudo ln -s /System/Library/Frameworks/Ruby.framework/Versions/1.8 /System/Library/Frameworks/Ruby.framework/Versions/Current
这将迫使Homebrew在系统安装中使用Ruby1.8。
发布于 2015-10-08 15:35:07
更新到El Capitan后,/usr/local
拥有root:wheel
权限。
使用以下命令将权限更改回用户:
sudo chown -R $(whoami):admin /usr/local
和:
brew doctor && brew update
这帮助我让Homebrew再次工作。
https://stackoverflow.com/questions/24652996
复制相似问题