ラズパイにRubyのバージョン管理を導入する

投稿者: | 2月 6, 2022

Rubyのバージョンを管理するためにrbenvを導入するよ!

1.Rubyのバージョン管理とは

Microsoft WindowsにはXPや7があるように、Rubyもバージョンがあります。

Microsoftであれば更新パッチが適応されてバージョンが上がっていきますが、RubyやPythonなどのプログラミング言語はユーザ自身で導入する必要があります。

流れとしては「①公式ページのダウンロード」「②ダウンロードしたファイルを適用」「③以前のバージョンを削除」の導入作業がありますが、実際に行うのは面倒です。

また、バージョンを上げたあとにRuby側にバグが見つかりバージョンを下げるとき、上記の①〜③を再度行う必要があるため手間がかかります。

そのため、バージョン別に構築することができ、違うバージョンに切り替え行うことができる「rbenv」があります。

今回は、ラズパイに「rbenv」を導入する手順を公開します。

2.rbenvの導入

rbenvを導入するラズパイは下記になります。

・ハードウェア        Raspberry Pi3
・Distributor ID: Raspbian
・Description: Raspbian GNU/Linux 9.13 (stretch)
・Release: 9.13
・Codename: stretch

2.1 rbenvのインストールとbashの追記

まずは大本のrbenvをインストール

$ sudo apt-get install rbenv

rbenvのインストールが完了したらbashに追加します。
bashとはサーバーを使用しているユーザーの環境変数が記載されているもので、サーバー起動時に読み込まれます。

$echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> .bashrc
$echo 'eval "$(rbenv init -)"' >> .bashrc

最後にrbenvが導入されたかを確認するために、バージョンを確認します。

$rbenv -v
rbenv 1.0.0

2.2.ruby-buildのインストール

rbenvはバージョンを管理してくれますが、rbenvの中でRubyの他バージョンの構築を「ruby-build」で行います。

そのためgit経由で「ruby-build」にインストールします。

$sudo apt-get install git
$git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
Cloning into '/home/pi/.rbenv/plugins/ruby-build'...
remote: Enumerating objects: 11962, done.
remote: Counting objects: 100% (655/655), done.
remote: Compressing objects: 100% (263/263), done.
remote: Total 11962 (delta 417), reused 538 (delta 346), pack-reused 11307
Receiving objects: 100% (11962/11962), 2.52 MiB | 2.98 MiB/s, done.
Resolving deltas: 100% (7884/7884), done.

2.3バージョンのインストールと適用

最後にrbenvを使用してRubyのバージョンをインストールします。

まずは取得できるバージョンリストを確認します。

$rbenv install --list
2.6.9
2.7.5
3.0.3
3.1.0
jruby-9.3.2.0
mruby-3.0.0
rbx-5.0
truffleruby-21.3.0
truffleruby+graalvm-21.3.0


Only latest stable releases for each Ruby implementation are shown.
Use 'rbenv install --list-all / -L' to show all local versions.

1/10現在では3.1.0が最新のため、3.1.0をダウンロードと構築します。

$rbenv install 3.1.0
$rbenv global 3.1.0
Installing ruby-3.1.0...
Installed ruby-3.1.0 to /home/pi/.rbenv/versions/3.1.0

※ダウンロードと構築が行われているため、時間がかかります。

2.4.選択したRubyバージョンの適用

最後に先程選択したバージョンを指定して、バージョンが変更されたかを確認します。

$source .bashrc
※2.1で設定したbashの反映を行ってます
$rbenv global 3.1.0
$rbenv rehash
$ruby -v
ruby 3.1.0p0 (2021-12-25 revision fb4df44d16) [armv7l-linux-eabihf]

コメントを残す

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