Mysql2でエラーが出た話

ポートフォリオを作っていた際にMysql2のエラーが。

つい昨日まで使えていたrails sコマンドも使えなくなる現象が起きたため、原因と解決策について記載しておきます。

 

 

 

出たエラーとしては、SNS認証のためのgemをインストールしようとした時にこのエラー。

 

f:id:m_suzu:20190928160637p:plain

 

なぜ今更Mysqlエラー??と思いSNS認証のためのgemを消してbundle installしても同じエラー。

 

エラー文で言われた通りに

gem install mysql2 -v '0.5.2' --source 'https://rubygems.org/'

のコマンドをしてみるも、エラー。

もしやと思いrails sを試みるも下記のエラー。

f:id:m_suzu:20190928161743p:plain

 

色々調べているうちにこの方の記事にたどり着きました。

見ているとエラー文が一緒!

https://qiita.com/park-jh/items/3084092ac4290ded6c5e

 

githubのissuesに解決方法が載っているとのことなので確認

https://github.com/brianmario/mysql2/issues/1005

 

 

そして上記の記事を参考に下記のコマンドを試したところ動くように!

 

 

bundle config --local build.mysql2 "--with-ldflags=-L/usr/local/opt/openssl/lib --with-cppflags=-I/usr/local/opt/openssl/include"

 

(※1回目はなぜかYou are replacing the current local value of build.mysql2, which is currently nilとのエラーが出ましたが、同じコマンドを2回試したところ通りました。

 

 

 

どうやらOS等のバージョンをアップデートした際に起こるエラーのようでした。

macOSを自動アップデートにしていたので、おそらくそれが原因かなーと。

忘れないよう備忘録としてブログに残しておきます。