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