ダッシュで奪取

自分用のメモ

【Rails】Railsはじめから:プロジェクト作成できずに詰まった

最近サーバーサイド全然触っていないな……と思ったので、CRUDアプリを作りながら復習です。

軽い気持ちで始めたら、最初からめちゃくちゃ詰まってしまいました。

環境
  • Ruby 2.7.1

  • Rails 6.0.3.2

目次

  1. プロジェクト作成
  2. DB作成
  3. DB作成(2回目)
  4. DB作成(3回目)
  5. 参考URL

1. プロジェクト作成

  • 今まで Rails 5 使っていましたが、せっかくなので最新版で遊んでみます!

    • プロジェクト名 「rails-crud」 、MySQLで作成
$ rails new rails-crud -d mysql

2. DB作成

$ rake db:create
  • ここで盛大に怒られる……セグメンテーションエラー?
/Users/UserName/.anyenv/envs/rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/mysql2-0.5.3/lib/mysql2/client.rb:90: [BUG] Segmentation fault at 0x0000000000000000

[IMPORTANT]
Don't forget to include the Crash Report log file under
DiagnosticReports directory in bug reports.

3. DB作成(2回目)

  • 一旦 gem をアンインストール
$ bundle exec gem uninstall mysql2
$ bundle config --local build.mysql2 "--with-ldflags=-L/usr/local/opt/openssl/lib"
  • Gemfile に mysql2 追記
# Use mysql as the database for Active Record
gem 'mysql2', '>= 0.5.3'
  • もう一回インストール
$ bundle install

4. DB作成(3回目)

  • 別のエラーになった
Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib
  • こちら を参考に

    • openssl インストールし直してみる
$ brew install openssl
  • openssl パッケージのバージョンを 1.0.2s に切り替える
$ brew switch openssl 1.0.2s

Cleaning /usr/local/Cellar/openssl/1.0.2s
Opt link created for /usr/local/Cellar/openssl/1.0.2s
  • できた!

  • rails s でローカルのサーバーも立った(良かった……)

$ rake db:create
Created database 'rails_crud_development'
Created database 'rails_crud_test'

5. 参考URL