RVM, Ruby 1.8.7 and OSX Lion

Mac OSX Lion で RVMでインストールしたRuby 1.8.7 で、

$ gem install rails

などとやると、

ruby-1.8.7-p352/lib/ruby/1.8/timeout.rb:60: [BUG] Segmentation fault

というエラーになってしまう。
その解決方法。
.bash_profileなどに、

export CC=gcc-4.2

とやっておいてから、RVMでRuby をインストールする。
ただし、後述するように、Xcode 4.2.1にはgccが含まれていない。別途gccを入れる必要がある。
私は、.bash_profileへの追加はせずに、RVMでのRubyインストール時に、

$ CC=/usr/bin/gcc-4.2 rvm install 1.8.7

とした。

Xcode 4.2.1 にはgcc-4.2が入っていないので、gcc-4.2を別途インストールする必要がある。
rvm requirements に記載があった。
まず、kennethreitz/osx-gcc-installer - GitHub でgccをインストール。
その後、必要があれば、Xcode 4.2.1をインストールすればよい。

osx-gcc-installerをインストールする前にXcodeをアンインストールした方がいいらしい。
Xcode4.3以降は、アンインストールはXcode.appを削除するだけでいい。

Do not install this if you already have Xcode installed! Mixing Xcode and osx-gcc-installer is known to cause various difficult-to-diagnose problems and is not recommended.

If you intend to only use command line tools you should first uninstall Xcode entirely before installing osx-gcc-installer, or see below for other options.

※ 1.9.2では、上記の問題は発生しなかった。
※ Snow Leopard では、RVMでのRubyインストール時に、

$ rvm pkg install readline
$ rvm install 1.9.2 --with-readline-dir=$rvm_path/usr

とやらないと、irbで日本語が入力できなかったが、Lionではreadlineの互換ライブラリlibeditが改善され、ふつうにインストールすれば大丈夫になった。
RVM, Ruby 1.8.7 and OSX Lion « frymanet.com

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください