railsの環境構築してる際、rubyの1.9系と1.8系の共存で割と手こずったので残しておきます。railsというより、rubyですね。
rubyのバージョン管理は、rvmを使用します。rvmとはRuby Version Managerの略で、複数のRubyの処理系をインストール、管理することができるツールです。普通はこれをインストールし、
rvm install 1.9.3 rvm install 1.8.7 rvm use 1.9.3 #1.9使用 rvm use 1.8.7 #1.8使用
とすれば終了なのですが、Lionの場合はそうはいきません。gccがllvmになり、rubyのコンパイルができなくなってしまったため、最新バージョンの1.9.3しかインストールできません。しかし現在、システムにメインで入っているrubyが1.8なので、rvmを使用せず、メインに戻してやれば1.8を使用することができます。それがrvm systemです。よって、
rvm install 1.9.3 rvm use 1.9.3 #1.9使用 rvm system #1.8使用
と使い分けられます。rvm上で1.8も1.9も管理したい場合はllvmでない、gccをmakeし、そこのパスを指定してあげれば旧rubyもコンパイルできるようになるようです。ただ、今回はさっさと環境構築したかったので、その方法は取りませんでした。
rvm 1.9.2これだけ。これをrailsのワークスペースのrootに置けば、railsを使用する際はrubyのバージョンが1.9.2になります。そこ以外ではsystem(1.8)になります。
1.9系は問題なくインストールできるのかと思いましたが、甘かったです。こちらもgccの関係でエラーが出ます。なので、ここではコンパイルにclangを使用することで解決します。
rvm install ruby 1.9.2 --with-gcc=clang
これと同じ方法で1.8もインストールできないかと思ったのですが、変わらずコンパイルエラーが起きてました。
で、当然エラーでた。railsコマンドが一切実行できない。-vですら。ということでrails入れ直し。できた。多分rails->rubyの順番でやったからかも
rails new してrails s でエラー。sqlite3が入ってなかった。gem install sqlite3。成功。