【Ruby/Rails】Rails5.2.2/MySQL8.0でmysql2のインストールに失敗する
こんにちは、しきゆらです。
今回は、タイトル通りmysql2のインストールに失敗したのをなんとかする方法をメモしておきます。
環境としては、
- Mac
- Ruby2.6.0
- Rails5.2.2
- MySQL8.0.13
という状態。
普通にbundle installすると、エラーが。
mysql2のインストールに失敗したようです。
調べてみると、以下のような解決方法がいくつも提示されていました。
以下のコードを打ち込む。
bundle config --local build.mysql2 "--with-ldflags=-L/usr/local/opt/openssl/lib --with-cppflags=-I/usr/local/opt/openssl/include
調べてみると、どうやらbundlerにはgemをビルドするときにフラグやオプションを渡すことができる機能を持っているようです。
上記コードは、mysql2のビルドオプションを渡すコードのようです。
Build Options
You can use bundle config to give Bundler the flags to pass to the gem installer every time bundler tries to install a particular gem.
bundle config build.mysql --with-mysql-config=/usr/local/mysql/bin/mysql_config
似たコードが書かれています。
オプションを追加し、再びbundle install。
・・・エラー直らず。
途方に暮れていると、こんな情報が。
ログ見たら –with-cppflags オプションに対応してないとのこと。
ldflagsのみで実行してみるbundle config --local build.mysql2 "--with-ldflags=-L/usr/local/opt/openssl/lib"
なんと、cppflagsはいらないようです。
実際、上記の設定後にbundle install すると問題なくインストールできました。
先人たちの体験談には頭が上がりません。
感謝です。
今回はここまで。
おわり
ディスカッション
コメント一覧
まだ、コメントがありません