ブラウザでhttp://localhost:3000/say/helloを表示させようとすると下記のエラーが出ます。
-------------------------------------------------------
MissingSourceFile in SayController#hello
no such file to load -- sqlite3
RAILS_ROOT: /work/demo
This error occurred while loading the following files:
sqlite3
-------------------------------------------------------
・http://localhost:3000の表示には問題ありません。
・/work/demo/app/controllers/say_controler.rbにhelloアクションの追加をしています
・/work/demo/app/views/say/hello.rhtml ファイルを作成しました
・一応、ルータのポート3000も開放しました。
・sqlite3のデータベースドライバのインストールが必要でしょうか。
・railsとsqlite3のパスが通っていないことが原因でしょうか?
・バージョン
Rails 2.1.0
ruby 1.8.6 (2007-03-13 patchlevel 0) [i686-linux]
gem 1.2.0
・OS
CentOS4.6
よろしくお願いします。
以前にも同様の質問がありました。
[参考URL]
教えていただいた[参考URL]にあるとおり、PATH の通っているディレクトリにsqlite3-rubyをインストールすると、http://localhost:3000/say/helloの表示が/work/demo/app/views/say/hello.rhtmlに記述したHTMLになりました。
[root@localhost ~]# cd /usr/bin [root@localhost bin]# gem install sqlite3-ruby Building native extensions. This could take a while... Successfully installed sqlite3-ruby-1.2.2 1 gem installed Installing ri documentation for sqlite3-ruby-1.2.2... Installing RDoc documentation for sqlite3-ruby-1.2.2...
ありがとうございました!
下記を実行してsqlite3のRuby用ドライバをインストールしてみてください。
gem install sqlite3
上記が"Failed to build gem native extension."というエラーで失敗する場合、下記を実行してsqlite3のヘッダファイルをインストールしてから再度試してみてください。
yum install sqlite-devel
以下、実行結果です。sqlite3のヘッダファイルのインストールはうまくいきましたがRuby用ドライバのインストールはできていないようです。
[root@localhost ~]# gem install sqlite3 ERROR: could not find gem sqlite3 locally or in a repository
[root@localhost ~]# yum install sqlite-devel (省略) Installed: sqlite-devel.i386 0:3.3.6-2 Complete!
[root@localhost ~]# gem install sqlite3 ERROR: could not find gem sqlite3 locally or in a repository
教えていただいた[参考URL]にあるとおり、PATH の通っているディレクトリにsqlite3-rubyをインストールすると、http://localhost:3000/say/helloの表示が/work/demo/app/views/say/hello.rhtmlに記述したHTMLになりました。
ありがとうございました!