UbuntuにRubyとRailsのインストール

長らくrubyを使っておらずすっかり忘れていて少し時間がかかってしまったのでメモ。

環境

Ubuntu18.04

インストールするもの

Ruby2.4.5 Ruby on Rails 4.2.8

方法

Ruby

ビルドに必要なライブラリをインストールする。

$ sudo apt-get install git gcc build-essential libreadline-dev zlib1g-dev
$ sudo apt-get install libssl-dev # Ruby 2.3以下をインストールしたい場合、「libssl-dev」ではなく「libssl1.0-dev」をインストールする必要があるらしい

rbenvのインストールと設定

$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc
$ source ~/.bashrc

rbenvを使ってruby2.4.5をインストールしてデフォルトでそのバージョンを使うように設定

$ rbenv install 2.4.5
$ rbenv global 2.4.5

$ ruby --versionでバージョンを確認するとよい。

Rails

gemを使ってインストールしていく。(gemはデフォルトで使えるっぽかったので何もせずに使った)

$ sudo gem i -v 4.2.8 rails --no-document

はじめ、次のようなエラーに遭遇したので対処した。

Building native extensions. This could take a while...
ERROR:  Error installing rails:
    ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.5.0/gems/nokogiri-1.10.1/ext/nokogiri
/usr/bin/ruby2.5 -r ./siteconf20190221-8653-16v0um0.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

extconf failed, exit code 1

Gem files will remain installed in /var/lib/gems/2.5.0/gems/nokogiri-1.10.1 for inspection.
Results logged to /var/lib/gems/2.5.0/extensions/x86_64-linux/2.5.0/nokogiri-1.10.1/gem_make.out

ruby-devをインストールすればよい。

$ sudo apt install ruby-dev

これでいけるはず。

$ sudo gem i -v 4.2.8 rails --no-document 

$ rails -vで望みどおりのバージョンがインストールされていればok。

railsをインストールする際、「Installing ri documentation」に非常に時間がかかるので「--no-document 」を引数に渡しておくと早くてうれしい

考察

Scalaを使うときにsbtを、Pythonを使うときはpyenvを使って管理しているのだけれど、rbenvは同様に必須だと感じた。

参考

qiita.com