MacのVMにRuby on Railsの環境構築して、rails serverコマンドを実行したら以下のエラーが発生してWebサーバの起動に失敗した。
/usr/local/share/gems/gems/sqlite3-1.3.11/lib/sqlite3.rb:6:in require': cannot load such file -- sqlite3/sqlite3_native (LoadError)
色々と調べて何とか解決したのでメモしときます。
環境
VM Centos7
Rails4
Sqlite3
まず以下のコマンドを実行する。
$ find /usr/local/share/gems/gems/ -name sqlite3_native*
出力結果
/usr/local/share/gems/gems/sqlite3-1.3.7/ext/sqlite3/sqlite3_native.so
次にviで以下のRubyファイルを編集する。
$ vi /usr/local/share/gems/gems/sqlite3-1.3.11/lib/sqlite3.rb
デフォルトのrequireをコメントアウトして、最初のfindの出力結果で取得したパスをrequireする(最後の拡張子.soは無くて良い)。
# コメントにする
# require "sqlite3/#{$1}/sqlite3_native"
require "/usr/local/share/gems/gems/sqlite3-1.3.11/ext/sqlite3/sqlite3_native"
〜 省略 〜
viで上書き保存したら、Webサーバを起動する。
$ rails server
これで無事、ローカル環境でWebサーバが起動しました。