Just do IT

思うは招く

Linux(Ubuntu) に rbenv を使って Ruby をインストールする方法

Vagrant + Linux の開発環境に rbenv を使って Ruby をインストールするためのメモ。

環境

rbenvをインストール

  • Macの環境ならbrewを使えばインストールできるが、Linuxに入れる場合、rbenvはGitHubからとってくる
  • そのためには、Gitクライアントをまずインストールする(vagrantUbuntuを入れてる場合はデフォルトで入ってるかも)
  • 仮想マシンを使っている場合、ファイアウォールの停止はしなくてもいけた(今回の場合)
# Gitをインストール
sudo apt-get -y install git

# GitHubからrbenvをインストール
git clone https://github.com/sstephenson/rbenv.git ~/.rbenv

次に。

# 「~/.rbenv/bin」を環境変数に追加するための記述を「~/.bash_profile」に追記
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile

# rbenvを初期化する記述を「~/.bash_profile」に追記
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

# 設定反映
source ~/.bash_profile

# これでも設定反映できる
exec $SHELL -l

これで準備完了。

rbenv を使う

# バージョン確認できるかチェック
rbenv --version
=> rbenv 1.1.2-11-gc46a970

# rbenvを実行するのに必要なプラグインRuby-buildをインストール
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

Ruby をインストール

# インストールできるバージョンを一覧表示
rbenv install --list

# バージョン指定でRubyをインストール
rbenv install 2.6.5

「Cコンパイラがないよー」と言われたら

エラーが出た場合。

# 失敗したらcコンパイラをインストール
sudo apt-get update
sudo apt-get install -y gcc

これでいけるだろと思ったら、また失敗した。

checking if make is GNU make... ./configure: line 29167: make: command not found

「makeコマンド入ってないよ」と言われるので入れる。

sudo apt-get install make

次にこんなエラーが。

The Ruby openssl extension was not compiled.
The Ruby zlib extension was not compiled.
ERROR: Ruby install aborted due to missing extensions
Try running `apt-get install -y libssl-dev zlib1g-dev` to fetch missing dependencies.

「これ入れてみたら?」と言われているので、こちらも入れる。

sudo apt-get install -y openssl-devel readline-devel zlib-devel

またRubyをインストール。

# バージョン指定でRubyをインストール
rbenv install 2.6.5

確認する。

rbenv versions
=> 2.6.5

ようやくRubyが使えるーーー。

Rubyを使う

さきほどインストールしたRubyのバージョンに切り替える。

# Rubyのバージョンを切り替える。
rbenv global 2.6.5

# Linux全体ではなくディレクトリだけでバージョン指定するなら
rbenv local 2.6.5

# 確認
ruby -v
=> ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-linux]

アンインストールしたいなら。

rbenv uninstall バージョン

以上、Linux(Ubuntu)にrbenvを使ってRubyをインストールする方法でした。

参照