WEB系の技術を詳しく解説

RailsにMySQLを導入したらかなりハマった件について

Railsアプリケーションを作るにあたってMySQLを導入して作成しようと思ったら、謎のエラーでかなりハマってしまったので忘備録にメモしておこうと思います。調べるのに結構時間かかったのでこれは誰かの役に立つだろう…。

スポンサードリンク

RailsにMySQLが入らない

今回のエラーは、Gemfileに gem ‘mysql2’ を記述して bundle install しようとした時に起きた出来事です。次のようなエラーが出ました、、、。

ちなみにこのときOS MojaveにアップデートしていたのでMySQLもxcode-select(Command Line Tool)も最新のものをインストールしていました。

まずはエラーの通りにgemをインストールしてみます。

うーん、頭が痛くなります。もうなんかよくわからないですね。 clang: error: linker command failed with exit code 1 (use -v to see invocation) とあるのでなにやらリンカコマンドに問題があるのは確認できます。何かがビルド出来てない?

とにかくネットを調べまくって原因を追及しました。

救世主となった記事達

1時間くらい試行錯誤していると、運良くエラーを解決してくれそうな記事に出会いました。それがこちら

この記事によると ld: library not found for -lssl から、opensslのパスがビルドの時に必要だとか何とか。ビルドのときにLDFLAGSとかCPPFLAGSとかにパスを追加する記述が必要だそうです。プログラミング初心者には結構きつい。というか、こんなの良く解決できますね…。

とりあえず以下のコードを打ち込む。

よし、これで大丈夫!

ん?まだ無理っぽい。Permission deniedと出ているので権限周りが良くなさそうですね。次にこちらの記事を参考にしたらsudoだけでいけるっぽいので試してみることにします。

いけました!!!!!!

まとめ

RailsにMySQLを入れたら大変な苦労をしたのでこの記事が誰かの役に立てば幸いです。なんでこんなに面倒なんだ!笑

p.s.先人達の知恵に感謝します。

プログラミングではこのような面倒なエラー解決に時間を掛けることがよくあります…。効率よくプログラミングを学習したいのであれば「tech boostオンライン」をオススメします。オンラインでどこにいても聞き放題です。無料カウンセリングも行なっているので一度話を聞きに行ってみるというのもアリだと思います。

テックブーストについてより詳しく>>

スポンサードリンク

1 Comment

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です