rails エラー「Runtime Error Your version of SQLite (3.7.17) is too old. Active Record supports SQLite >= 3.8」の対処法
rails実行時にエラー「Runtime Error Your version of SQLite (3.7.17) is too old. Active Record supports SQLite >= 3.8」が発生した場合の対処法を記述してます。
環境
- OS CentOS Linux release 7.9.2009 (Core)
- Ruby 2.7.2
- Rails 6.1.1
- rbenv 1.1.2-40-g62d7798
エラー全文
サイトアクセス時に発生
対処法
sqliteのバージョンが古いため発生しているので、バージョンを上げる
ダウンロードします。最新バージョンはこちらで確認可能です。
curl -O https://www.sqlite.org/2020/sqlite-autoconf-3310100.tar.gz
tar xzvf sqlite-autoconf-3310100.tar.gz
cd sqlite-autoconf-3310100
競合しないようにディレクトリを指定。
./configure --prefix=/opt/sqlite/sqlite3
インストール
make
sudo make install
バージョンを確認します。
/opt/sqlite/sqlite3/bin/sqlite3 --version
<出力結果>
3.31.1
gemをアンイストールします。
gem uninstall sqlite3
sqlite3を指定してインストールします。
gem install sqlite3 -- --with-sqlite3-include=/opt/sqlite/sqlite3/include --with-sqlite3-lib=/opt/sqlite/sqlite3/lib
これで自分の場合は、解決しました。
-
前の記事
npm実行時にエラー「cb.apply is not a function」が発生した場合の対処法 2021.01.13
-
次の記事
CSS3でアコーディオンメニュー 2021.01.13
コメントを書く