118

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 `'
4

11 に答える 11

281

このエラーは、次の手順で簡単に修正できます。

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/経由

于 2014-06-16T13:30:08.097 に答える
39

Yosemite にアップデートしたところ、後でbrew壊れていることがわかりました。

/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

まだbrewに変更を加えていない場合は、次のことをお勧めします. それ以外の場合は、以下をお読みください。

  1. cd /System/Library/Frameworks/Ruby.framework/Versions/
  2. sudo ln -s Current 1.8
  3. brew update
  4. sudo unlink 1.8

すでにbrewファイルに変更を加えて、gitの混乱に陥っていますか?

編集しようとしまし/usr/local/Library/brew.rbたが、git リポジトリへのローカルの変更により、brew update更新をプルダウンできませんでした。このページや他のサイトで言及されている他の解決策をいくつか試してみましたが、最終的には git の混乱に陥り、醸造のために行ったすべてのことを元に戻すだけでした。

変更をコミットしましたが、状況が悪化しました。最終的に、コミットを元に戻す必要がありgit reset --hard HEAD~1、正しいコミットのようになるまで。バージョン管理されていないファイルも散らかっていたので (/usr/Local のファイルのアクセス許可を変更しました)、git clean -f -dバージョン管理されていないファイルとディレクトリをすべて削除し、変更を加える前に最初の場所に戻しました。

于 2014-10-27T20:21:46.837 に答える
37

それを修正する手順:

  1. Xcode 6 のコマンド ライン ツールをインストールする

  2. 醸造を再インストールします:

    ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    
  3. brew がインストールされると、rvm が動作します:

    rvm install ruby
    

私のために働いた、yahoo!

于 2014-06-15T02:07:26.113 に答える
7

これは、他の人の投稿からの回答と、Google でのちょっとした掘り下げからの集大成ですが、完全な回答が 1 か所にあるようにまとめました。具体的には、これで動作するようになりましたが、通常どおりブリューの更新を実行して、すべてを再びきれいにすることもできます。

  1. /usr/local/Library/brew.rb (emacs/vi/nano/whatever) を開きます
  2. 最初の行を次のように変更します#!/System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby -W0。その行にあった「1.8」を「Current」に変更しているだけです(大文字の「C」を保持していることを確認してください。そうしないと、後でgitが混乱します)。
  3. cd $(brew --repository)
  4. git add Library/brew.rb
  5. git commit -m "upgrading to ruby 2.0"
  6. brew update(またはsudo brew update、brew が sudo によるシステム変更のみを行うように設定されている場合)

クレジット: これの多くはheregit commit -amから来ましたが、/usr/local フォルダーで行うことはお勧めしません。

于 2014-10-24T00:22:29.610 に答える
3

前に言ったように:1)現在に変更する2)xcode 6をインストールする

brew と ruby​​ でさらに問題が発生した場合は、これが役立つはずです。バージョン 1.8 で brew には 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
于 2014-08-04T13:32:00.940 に答える
1

これを次のように修正しました:</p>

  1. sudo chown -R $(whoami):admin /usr/local
  2. cd $(brew --prefix) && git fetch origin && git reset --hard origin/master
于 2016-04-13T12:01:45.473 に答える
0

注:これは非常に危険なので、完全に失敗した状態になった場合にのみ、以下を実行してください

例として、私は取得し続けました

$ sudo ln -s 現在の 1.8

$ 醸造更新

/usr/local/Library/brew.rb:18:in ': 未定義のメソッドのヘルプ?' for [“update”]:Array (NoMethodError)

/usr/local私はこれを取得しました...(コマンドで「更新」を切り替えるコマンドに関係なく)仲間フォルダーを要求することで問題を解決しました。/usr/local次に、フォルダーのバックアップを作成しました。

sudo mv /usr/local /usr/local.orig

それから私は彼/usr/localを私のものに動かしました

sudo mv ~/Downloads/local /usr/local

注: 一部のデータが失われる可能性があるため、必ずバックアップを作成してください。

于 2015-03-04T15:34:18.267 に答える
-1

パッケージ マネージャーを使用して Ruby をインストールしようとすると問題が発生しました。これらのプログラムに公平を期すために、私はそれらの経験がほとんどないことを認め、他のほとんどのレスポンダーが行ったように深く掘り下げる努力をしませんでした. 私は怠け者で、ほとんどの opsys の選択肢と多くのパッケージで利用できるバイナリ インストーラを使用することを好みます。残念ながら、Ruby はそれを提供していないようです。

ruby-build は簡単にインストールでき (スタンドアロン - プラグインではありません)、Ruby はソースからエラーなくビルドされ、必要な場所に配置されました。

ビンゴ - 簡単 :) これは、説得力に欠けるパッケージ マネージャーの私たちにとって良い代替手段のように見えます。

チャーリー

于 2015-04-25T16:58:54.520 に答える