まっさらな状態からRubyを始める方への入門解説

Rubyを使い始めようとするとrbenvやらgemやらbundlerなんて単語が出てきて、何それ?という感じになりませんか。わたしはなりましたよ。

ということで、細かい事は良いからとりあえずRubyを使える状態にしたい、という方に向けた入門解説です。

rbenvとは

rbenvは複数バージョンのRubyをインストールして必要に応じてバージョンを切り替えて使えるようにしよう、という仕組みです。

開発の現場など複数バージョンのRubyを切り替えながら使いたい場合に便利です。

新しいバージョンのRubyでも動くか試してみよう、なんてことも気軽にできるようになるのでrbenvは導入しておいても良いかと思います。

rbenvインストール

macOSの場合

homebrewを使っていることを前提にしています。次のコマンドでrbenvをインストールします。

$ brew install rbenv ruby-build

rbenvとruby-buildをインストールしたら以下のコマンドで.zshrcへ2行追記します。

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

追記したら.zshrcを読み込みます。手動で読み込むのは今回だけです。

$ source ~/.zshrc

Ubuntu Linuxの場合

GitとCurlをあらかじめインストールしておきます。

$ sudo apt install git
$ sudo apt install curl

rbenvをGitHubからcloneします。

$ git clone https://github.com/rbenv/rbenv.git ~/.rbenv

正常にcloneできたら以下のコマンドで.bashrcへ2行追記します。

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

追記したら.bashrcを読み込みます。手動で読み込むのは今回だけです。

$ source ~/.bashrc

その他必要なものをインストールしておきます。

$ sudo apt-get install -y libssl-dev libreadline-dev zlib1g-dev gcc make

Ruby on Railsの利用も考えているのであれば以下も一緒にインストールすると良いかも知れません。

sudo apt install libsqlite3-dev cmdtest ruby-railties

rbenvの使い方

これでrbenvコマンドが実行できるようになっているはずなのでrbenvコマンドからインストール可能なrubyを次のコマンドで確認します。

$ rbenv install -l

ruby 2.6.5をインストールしたければ次のようにします。

$ rbenv install 2.6.5

インストールしたruby 2.6.5を使うには次のようにしてバージョンを切り替えます。

$ rbenv global 2.6.5

これで切り替わりました。切り替え可能なrubyを確認したい場合は次のようにします。

$ rbenv versions

新しくrubyをインストールしたりgem(後述)をインストールした場合は更新を反映させるコマンドを実行しておく必要があるので注意してください。このコマンドはおまじないだと思って頂ければ良いでしょう。

$ rbenv rehash

rbenvのディレクトリ構成

rbenvを使うとホームディレクトリ配下に「.rbenv」というディレクトリが作成されます。

ディレクトリ 役割
~/.rbenv/ リートディレクトリ
~/.rbenv/shims/ rbenvで切り替えを実現するためのラッパーファイル
~/.rbenv/version グローバルに設定しているRubyのバージョンを記録している
~/.rbenv/versions/ rbenvでインストールしたRubyはここにインストールされる

gemとbundler

gemとは

gemとはパッケージの事です。あるいはライブラリやモジュールと説明した方がピンと来るかも知れません。

素のRubyには備わっていない便利な処理を追加するわけですね。gemはパッケージとしてのgemとパッケージ管理システムとしてのgem、どちらも含みます。

とりあえずgemといえばパッケージの事だと思っていれば良いです。

bundlerとは

bundlerはgemを管理するためのツールです。ややこしい事にgemを管理するためのbundlerをgemでインストールします。

gemというのは依存関係があってひとつずつ手でインストールするのはとても大変です。それを解決してくれるのが bundlerというわけです。bundlerを使うと依存関係を解決しながらgemをインストールしてくれます。

bundlerでパスを指定してgemをインストールする

これは好みの問題なのですが、ネットでbundlerを調べるとgemのインストール先を「vendor/bundle」としている事が多いです。

アプリを開発するディレクトリに入って以下のコマンドを打ちます。

$ bundle config set path 'vendor/bundle'

そうしたら初期化しましょう。

$  bundle init

初期化するとGemfileが作成されています。bundlerでgemをインストールするにはGemfileが配置されているディレクトリでコマンドを実行します。

$ bundle install

 

コメントを残す

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)