SQlite3への対応

先日手元のMacBookにRails2.2.2をインストールしてサンプルを作ろうとおもったら、SQLite3が対応できないよ、といったエラーがでて停止。

よくわからなかったので環境を調査。

  • Ruby1.8.7 P72
  • sqlite3-ruby-1.2.4 (1.2.2もインストールしてはある)
  • Gem1.3.1
  • SQLite3.0.4

上記のようなバージョンが入っている事を確認(というか去年まで2.0.2の開発をしてたんだが、どうしたんだろう)。sqlite3-ruby-1.2.4が実行権限等で悪さをしているという記事をいくつか見かけたので、~/ruby1.8.7/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.4の下の権限をチェックしてそれらしい所に付与してみたけど変わらず。

以下のコマンドでsqlit3が読み込めないと出る。

require "rubygems"
require "sqlite3"

sqlite3-rubyはgemでインストールしてあるので1.2.4を一旦削除して1.2.2だけにしても症状は変わらず...

時間もなかったので、ソースからインストールする事にした。ソースは以下の場所から入手。

http://rubyforge.org/frs/?group_id=254&release_id=25302

インストールはトラブル無し。

$ tar zxvf sqlite3-ruby-1.2.4.tar.gz
$ cd sqlite3-ruby-1.2.4
$ ruby setup.rb config
$ ruby setup.rb setup
$ ruby setup.rb install

これでrequire "sqlite3"は普通に動作するようになった。何が問題だったんだろうか...