bundle install ができなくてはまったのでやった対策

Mac に入れてある Ruby(rvm管理下)で、ちょっとしたツールを作ろうとしたのだけど、An error occurred while installing unf_ext (0.0.6), and Bundler cannot continue. というメッセージが出て、bundle install ができなかったので備忘録。

スポンサーリンク

bundle install が途中で止まる

まずはツールを作るため、bundle init で Gemfile を生成しました。

続いて、Gemfile を編集。

gems をインストールするパスを指定して bundle install。

g++: error… とあるので、ビルド中に何かエラーぽい。ここで止まって bundle install が進みませんでした。一応ログ確認します。

gcc を変更してたのが原因?

g++ のエラーっぽいのでコンパイラ周り。よく分からないけど、1つ思い当たりました。そう言えば、rvm で ruby1.8.7 をインストールする時に、gcc, g++ を homebrew でインストールした gcc4.9 に変更したのでした。

rvm で ruby 1.8.7 インストール時にエラーになったので gcc 4.9 を homebrew で入れた | EasyRamble

上のページに gcc を変更した記録がありました、2013年5月8日。これが原因かもしれないので、元々入っていた(Xcodeインストール時に入れた)Apple の llvm な gcc に戻します。

rvm で ruby 1.8.7 をインストールするために、以下のようにして、gcc4.9 が優先するように設定していた。

なので一旦、gcc4.9 へのシンボリックリンク(/usr/local/bin/gcc, /usr/local/bin/g++)を削除して試してみます。

これで、Xcode インストール時に入れた、i686-apple-darwin11-llvm-gcc-4.2 に戻りました。

その後、一応 rvm で入れていた ruby 1.9.3 と 2.0.0 をインストールし直しました。

改めて bundle install

もう一回、bundle install

はまったけど最終的にOK、無事に bundle install が上手くできました。rubygems の C Extension は、ruby をインストールしたのと同じ gcc でないとビルドできないとかそういうことなのか?よく分かりません。

スポンサーリンク
私は以下の本で Ruby を覚えました。メタプログラミングRubyは入門を超える内容で難しめです。
スポンサーリンク
 
Twitterを使っていますのでフォローお願いたします!ブログの更新情報もつぶやいてます^^
(英語学習用)

Leave Your Message!