hiro99ma blog

Rubyをほとんど使わないがインストールする(RVM)

2025/09/15

C言語で単体テストを書いているが、この環境を作るまでにひどく時間がかかった。
一から作ったのが原因ではあるが、では既に何かデファクトスタンダードがあるかというと無いと思う。

そこで見つけたのが、単体テストフレームワーク Unity と同じグループで開発している Ceedling だ。

まずは使ってみようとしたのだが、Ruby が必要らしい。
インストールしていないのだが、探してみると開発環境としてインストールするためプロジェクトごとにバージョン管理する手順がたくさん見つかった。
今回は Ceedling を動かすためだけにインストールするので、Ruby 開発する人ほどには使わないが root 環境にインストールしたいわけでもないくらいでやってみよう。

rbenv

rbenv を使うと、必要があればバージョンを切り分けられそうだ。

$ sudo apt install rbenv
$ rbenv install -l
$ rbenv install 3.1.2
$ ruby --version
ruby 3.2.3 (2024-01-18 revision 52bb2ac0a6) [x86_64-linux-gnu]
$ gem --version
3.4.20
$ rbenv init
# Load rbenv automatically by appending
# the following to ~/.bashrc:

eval "$(rbenv init -)"

さて、手順通りに最新バージョンをインストールしたのだが、そもそも rbenv をインストールした時点で /usr/bin/ruby もインストールされていた。
rbenv をインストールしない方が「最小限」で済むのでは。。。
ここで ruby だけ uninstall すると rbenv も一緒に消えてしまった。

root にインストールしない方法を探しているので、rbenv は止めておこう。

RVM

rbenv 以外でもう1つ RVM が候補にあったのでこちらを試そう。
コマンド名が rvm で、 rm と一文字違いなので注意しよう。

curl の前に \ が付いているのはなんだろう? どうやら alias 設定を無視して実行するという意味らしい。

gnupg2 は持っていなかったので apt install したが、それ以外はローカルにインストールされたようだ。
.bashrc などに自動で追加まで行われている。

これを書いている時点の Ruby安定版は 3.4.5 だそうだ(ダウンロード)。
インストール直後の rvm list known には出てこなかったが rvm get head で更新した後だと出てきた。
が、rvm install すると apt get すると言い出した。そういうものなの? あるいは何か足りないからインストールしたいのか?
ruby をインストールするのではなく、libsqlite3-dev とかそういうのだったのでよしとしよう。

$ rvm install ruby-3.4.5
Searching for binary rubies, this might take some time.
Found remote file https://rubies.travis-ci.org/ubuntu/24.04/x86_64/ruby-3.4.5.tar.bz2
Checking requirements for ubuntu.
Installing requirements for ubuntu.
Updating system..hirokuma password required for 'apt-get --quiet --yes update':

最終的には $HOME/.rvm の下にインストールされたので私の希望通りだ。
RVM を使おう。

もう1つの環境にもインストールしたのだが、そちらは rvm install でパスワード入力はしなくても進んだ。 いろいろビルドしている環境なのでライブラリが既にインストールされていたのだろう。
また、 rvm use 3.4.5 --default しないとコマンドが使えなかった。同じような手順でやったつもりなのだがよくわからない。

Ceedling

今回の本題ではないが、RVM でインストールされた gem を使う例として ceedling をインストールしておこう。

$ gem install ceedling
Fetching ceedling-1.0.1.gem
Fetching unicode-emoji-4.1.0.gem
Fetching unicode-display_width-3.2.0.gem
Fetching thor-1.4.0.gem
Fetching constructor-2.0.0.gem
Fetching diy-1.1.2.gem
Fetching deep_merge-1.2.2.gem
Successfully installed unicode-emoji-4.1.0
Successfully installed unicode-display_width-3.2.0
Successfully installed thor-1.4.0
Successfully installed constructor-2.0.0
Successfully installed diy-1.1.2
Successfully installed deep_merge-1.2.2
Successfully installed ceedling-1.0.1
7 gems installed

A new release of RubyGems is available: 3.6.9 → 3.7.2!
Run `gem update --system 3.7.2` to update your installation.

writer: hiro99ma
tags: その他  

 < Top page

コメント(Google Formへ飛びます)

GitHub

X/Twitter

Homepage

About me