Yosemiteをインストールした後、brewまたはRubyを実行できませんでした。
醸造アップデートでこのエラーが発生していました:
/usr/local/bin/brew: /usr/local/Library/brew.rb: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/Ruby: bad interpreter: No such file or directory
/usr/local/bin/brew: line 23: /usr/local/Library/brew.rb: Undefined error: 0
irbでこのエラーを取得:
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:245:in mkdir': Permission denied - /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-14 (Errno::EACCES) from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:245:infu_mkdir'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:219:in block (2 levels) in mkdir_p' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:217:inreverse_each'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:217:in block in mkdir_p' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:203:ineach'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:203:in mkdir_p' from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:210:inwrite_gem_make_out'
from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:132:in build_error' from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:171:inrescue in build_extension'
from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:156:in build_extension' from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:198:inblock in build_extensions'
from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:195:in each' from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:195:inbuild_extensions'
from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:1436:in block in build_extensions' from /Library/Ruby/Site/2.0.0/rubygems/user_interaction.rb:45:inuse_ui'
from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:1434:in build_extensions' from /Library/Ruby/Site/2.0.0/rubygems/stub_specification.rb:60:inbuild_extensions'
from /Library/Ruby/Site/2.0.0/rubygems/basic_specification.rb:56:in contains_requirable_file?' from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:925:inblock in find_inactive_by_path'
from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:924:in each' from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:924:infind'
from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:924:in find_inactive_by_path' from /Library/Ruby/Site/2.0.0/rubygems.rb:185:intry_activate'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:150:in block in search_file' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:158:inblock in each_localized_path'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:167:in each_sublocale' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:157:ineach_localized_path'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:145:in search_file' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:124:infind'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:108:in load' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:32:ininitialize'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/init.rb:114:in new' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/init.rb:114:ininit_config'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/init.rb:16:in setup' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb.rb:380:instart'
from /usr/bin/irb:12:in `'
このエラーは、次の手順で簡単に修正できます。
1)ターミナルを開く
2)nano /usr/local/Library/brew.rb
と入力します
3)最初の行で「1.8」を「Current」に変更します。したがって、次のようになります。
#!/System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/Ruby -W0
http://blog.ic3man.gr/2014/06/homebrew-Ruby-bad-interpreter-no-such-file-or-directory/
修正手順:
Xcode 6のコマンドラインツールをインストールする
Brewを再インストールします。
Ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Brewがインストールされると、rvmは動作します:
rvm install Ruby
ヤフー、私のために働いた!
スクリプトを編集すると、brew update
が機能しなくなります。 git pull
が失敗する原因となる追跡ファイルのローカル編集があります。
私はこれをしましたが、きれいだと思います:
cd /usr/local/Library
git pull -q Origin refs/heads/master:refs/remotes/Origin/master
brew doctor
からの苦情はありません。
これは、他の人の投稿からの回答とGoogleでの少しの掘り出し物の集合体ですが、完全な回答が1か所に収まるように配置すると思いました。具体的には、これにより今すぐ動作するようになりますが、通常どおり更新を作成して、すべてを再びクリーンにすることもできます。
#!/System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/Ruby -W0
。その行にあった「1.8」を「Current」に変更しているだけです(大文字の「C」を保持しておくと、後でgitが混乱してしまいます)。cd $(brew --repository)
git add Library/brew.rb
git commit -m "upgrading to Ruby 2.0"
brew update
(またはbrewがSudoでシステム変更のみを行うように設定されている場合はSudo brew update
)クレジット:この多くは here に由来しますが、/ usr/localフォルダーでgit commit -am
を実行することは本当にお勧めしません。
前述のように:1)現在のものに変更2)xcode 6をインストール
BrewとRubyでさらに問題が発生した場合、これが役立つはずです。何らかの理由でbrewはバージョン1.8でRubyを必要とするため、フォルダーを作成します。
Sudo mkdir -p /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin
シンボリックリンクを作成します:
Sudo ln -s /usr/bin/Ruby /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/Ruby
このチュートリアルをご覧ください: http://ryantvenge.com/2014/09/Ruby-homebrea-yosemite/
それは私のために働いた!
これを次のように修正しました。
Sudo chown -R $(whoami):admin /usr/local
cd $(brew --prefix) && git fetch Origin && git reset --hard Origin/master
例として、私は取得し続けました
$ Sudo ln -s現在1.8
$ brew update
/usr/local/Library/brew.rb:18:in ':undefined method help?’ for [“ update”]:Array(NoMethodError)
私はこれを取得するだけです...(どのコマンドでもコマンドで「更新」を切り替えるだけで)仲間/usr/local
フォルダーを要求することで問題を解決しました。次に、/usr/local
フォルダーのバックアップを作成しました。
Sudo mv/usr/local /usr/local.orig
それから彼の/usr/local
を私のものに移動しました
Sudo mv〜/ Downloads/local/usr/local
注:一部のデータが失われる可能性が高いため、必ずバックアップを作成してください。
brew updateエラーはこれで修正できます:
Sudo chown -R $USER:admin /usr/local
cd /usr/local
git reset --hard Origin/master
brew update