MacでRubyのバージョンを上げて、Rails6のインストールするまでをやりました。

February 13, 2022

これは何?

MacでRails6のインストールを試してみたところ、すんなりといかなかったのでその時にやったことを書きます。

Rails のインストール (エラー発生)

いきなり躓きました。

$ sudo gem install rails -v '6.0.0'
Building native extensions. This could take a while...
ERROR:  Error installing rails:
	ERROR: Failed to build gem native extension.

    current directory: /Library/Ruby/Gems/2.6.0/gems/nio4r-2.5.8/ext/nio4r
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby -I /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0 -r ./siteconf20220102-18999-1c0hows.rb extconf.rb
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/include/ruby.h

You might have to install separate package for the ruby development
environment, ruby-dev or ruby-devel for example.

extconf failed, exit code 1

Gem files will remain installed in /Library/Ruby/Gems/2.6.0/gems/nio4r-2.5.8 for inspection.
Results logged to /Library/Ruby/Gems/2.6.0/extensions/universal-darwin-19/2.6.0/nio4r-2.5.8/gem_make.out

あんまり深い入りせずに、Rubyのバージョンを上げてみることにします。

Ruby のバージョンを上げる

$ brew upgrade rbenv
$ rbenv install 2.7.5
$ rbenv global 2.7.5

で、Ruby のバージョンが切り替わらない!ってなったのですが、 最近、シェルをbash -> zsh に変えたことを思い出しました。

~/.zprofile

# rbenv Setting
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

設定ファイル読み込み

$ . ~/.zprofile

Rails のインストール

$ sudo gem install rails -v '6.0.0'

bundle install 通るまで

$ bundle install

下記のgem installをしたら、bundle install が通りました。

$ sudo gem install racc -v '1.6.0' --source 'https://rubygems.org/'
$ sudo gem install bindex -v '0.8.1' --source 'https://rubygems.org/'
$ sudo gem install msgpack -v '1.4.2' --source 'https://rubygems.org/'
$ sudo gem install bootsnap -v '1.9.3' --source 'https://rubygems.org/'
$ sudo gem install byebug -v '11.1.3' --source 'https://rubygems.org/'
$ sudo gem install ffi -v '1.15.4' --source 'https://rubygems.org/'
$ sudo gem install puma -v '3.12.6' --source 'https://rubygems.org/'
$ sudo gem install sqlite3 -v '1.4.2' --source 'https://rubygems.org/'

ローカルサーバー起動するまで

$ rails s
1: from /Users/xxx/.rbenv/versions/2.7.5/lib/ruby/gems/2.7.0/gems/webpacker-4.3.0/lib/webpacker/configuration.rb:91:in `load'
/Users/xxx/.rbenv/versions/2.7.5/lib/ruby/gems/2.7.0/gems/webpacker-4.3.0/lib/webpacker/configuration.rb:95:in `rescue in load': Webpacker configuration file not found /Users/xxx/projects/memo/experiments/rails/sample-6.0/config/webpacker.yml. Please run rails webpacker:install Error: No such file or directory @ rb_sysopen - /Users/xxx/projects/memo/experiments/rails/sample-6.0/config/webpacker.yml (RuntimeError)

エラーメッセージの通り、webpacker のインストールをします。

$ bundle exec rails webpacker:install

これでローカルサーバーが起動しました。

おわりに

ruby 2.6 / Rails 5系 で動作はしていたので、rubyがrbenvのものを使ってなかったのが原因だったのかもしれません とこの記事を書いている時に気がつきました。

新しめのrubyになったので、まあ良し!です。


SHARE

Profile picture

Written by tamesuu