今更だけど、Mac LeopardにRailsを再インストール
諸事情でSnow Leopardへのアップグレードに躊躇しているため、現在の環境、LeopardへRailsの(再)環境構築忘備録です。
Ruby on Railsの再勉強をしてみようと思ったのが再構築の始まりです。
Leopardには初めからRailsの開発環境がほぼ入っているので、簡単に開発環境整えられるだろうと思っていたのですが、所々でエラー・・・。
環境
- Ruby 1.8.7
- gem 1.8.8
- Rails 2.3.8(このページの作業終了後に3.0.9にアップグレードされてました)
- sqlite 1.3.1
1、sudo gem updateでエラー
コマンドを実行するとエラーがいっぱい・・・。
Leopardでは必要ないコマンド
$ sudo port install rb-rubygems
$ sudo gem update --system
$ sudo gem update
を実行し、rubygemsを再インストール。
エラーは取り敢えず無くなった。
次はサーバ起動
$ script/server
2、こんな感じのエラーが出て起動せず・・・。
uninitialized constant ActiveSupport::Dependencies::Mutex (NameError)
このコマンドを実行するとエラーは無くなりサーバは起動しました。
$ export DYLD_LIBRARY_PATH=/usr/lib
ですが、このコマンドちょっとヤバいのかも・・・。
MacPorts のために DYLD_LIBRARY_PATH を使ってはいけない理由
DYLD_FALLBACK_LIBRARY_PATHを使った方が良いのかも。
3、サーバ起動後、アクセスすると・・・
dyld: lazy symbol binding failed: Symbol not found: _sqlite3_initialize
Referenced from: /Library/Ruby/Gems/1.8/gems/sqlite3-ruby-1.3.1/lib/sqlite3/sqlite3_native.bundle
Expected in: /usr/lib/libsqlite3.0.dylib
こんなエラーが出てサーバが起動出来ず・・・
sqliteがいけない??
訳分からないので、アンインストールし、
$ sudo gem uninstall sqlite3-ruby
もう一度インストールし直した。
$ sudo gem install sqlite3-ruby
config/environment.rb ファイルの修正
# config.gem “sqlite3-ruby”, :lib => “sqlite3”
↑この行(4行目)のコメントアウトを外して、
config.gem 'sqlite3-ruby', :lib => 'sqlite3', :version => '!= 1.3.1'
と修正。
この3つを修正する事で、Railsの起動が成功!
MacにRailsをゼロからインストールする一番簡単な方法を参考にさせていただき、
Hello World!
の表示を確認。
さあ、今後どんどん勉強して行くぞ!
【追記】
このページの作業終了後にRailsのバージョン確認したら3.0.9にアップグレードされてました。
自分的にはどうせなら3.0系で勉強再開したかったので良かったです。
この本で勉強始めました!
スイスイ進められて良い感じです。
【送料無料選択可!】Ruby on Rails 3アプリケーションプログラミング (単行本・ムック) / 山田… |