Rubyをインストールするには

「7つの言語 7つの世界」第2章の学習のために、Rubyをインストールします。

対話式のインタープリターは irb

ファイルを実行するときは、ruby

7つの言語 7つの世界

  • Ruby
  • Io
  • Prolog
  • Scala
  • Erlang
  • Cloijure
  • Haskell

インストール

Windows 10

RubyInstaller

RubyInstallerでインストールするのが簡単です。

RubyInstallerのページを表示します。WITH DEBKITの一覧から、太字表示の「Ruby-Debkit 2.6.6-1 (x64)」をダウンロードします。

ダウンロードしたインストーラーを管理者権限で起動します。

インストールPATHはそのままでもかまいません。ここでは、後ほど uruでバージョン切り替えするために、C:\Ruby\Ruby2.6.6-1-x64 にしました。

MSYS2にチェックを付けておきます。

インストールが進行して、

インストールが完了しました。Finishを押すと、コマンドプロンプトが開き、ridik のインストールが始まります。

特に数字を入力することなく、ENTERキーを押します。

再び、聞かれるので、やはり、ENTERキーを押します。

コマンドプロンプトを起動すると、rubyバージョンを確認します。

C:\Users\aoki.makoto>ruby --version
ruby 2.6.6p146 (2020-03-31 revision 67876) [x64-mingw32]

C:\Users\aoki.makoto>irb --version
irb 1.0.0 (2018-12-18)Code language: DOS .bat (dos)

uruで複数バージョンを切り替える

Ruby 2.6.6と、Ruby 2.4.4を切り替えてみましょう。

RubyInstallerのDownloadページから、WITH DEBKITの一覧から、太字表示の「Ruby-Debkit 2.4.4-1 (x64)」をダウンロードします

インストールPATHを「C:\Ruby\Ruby2.4.4-1-x64」に編集します。「Add Ruby executables to your PATH」のチェックをはずします。チェックを付けたままでもかまいませんが、デフォルトのRubyバージョンが 2.4.4 になります。

uruのダウンロードページを表示して「uru-0.8.5-windows-x86」をダウンロードします。

ダウンロードファイルは7z形式なので、7zipなどで解凍します。解凍すると、uru_rt.exe ができます。

次のコマンドを実行します。uru.bat と uru.ps1 が作られます。必要に応じて、このディレクトリを環境変数PATHに追加します。

C:> uru_rt admin installCode language: DOS .bat (dos)

Ruby2.6.6を登録します。インストールPATHのbinを登録します。

C:> uru admin add C:\Ruby\Ruby2.6.6-1-x64\bin
---> Registered ruby at `C:\Ruby\Ruby2.6.6-1-x64\bin` as `266p146`

C:> uru ls
 => 266p146     : ruby 2.6.6p146 (2020-03-31 revision 67876) [x64-mingw32]

C:> ruby --version
ruby 2.6.6p146 (2020-03-31 revision 67876) [x64-mingw32]

C:> irb --version
irb 1.0.0 (2018-12-18)Code language: DOS .bat (dos)

Ruby2.4.4を登録します。インストールPATHのbinを登録します。

C:> uru admin add C:\Ruby\Ruby2.4.4-1-x64\bin
---> Registered ruby at `C:\Ruby\Ruby2.4.4-1-x64\bin` as `244p296`

C:> uru ls
    244p296     : ruby 2.4.4p296 (2018-03-28 revision 63013) [x64-mingw32]
 => 266p146     : ruby 2.6.6p146 (2020-03-31 revision 67876) [x64-mingw32]Code language: DOS .bat (dos)

uruでRuby2.4.4を選択します。

C:> uru 244p296
---> now using ruby 2.4.4-p296 tagged as `244p296`

C:> uru ls
 => 244p296     : ruby 2.4.4p296 (2018-03-28 revision 63013) [x64-mingw32]
    266p146     : ruby 2.6.6p146 (2020-03-31 revision 67876) [x64-mingw32]

C:> ruby --version
ruby 2.4.4p296 (2018-03-28 revision 63013) [x64-mingw32]

C:> irb --version
irb 0.9.6(09/06/30)Code language: DOS .bat (dos)

ただし、コマンドプロンプトを閉じると、デフォルトのRubyに戻ってしまいます。コマンドプロンプトを起動するたびに、uruでRubyを選択する必要があります。

また、rbenvではディレクトリごとに rubyバージョンを設定できますが、uruではできません。

参考記事

Windowsでrubyをはじめよう - Qiita
前書き普段、Windowsでrubyを使っているのだけど、他のruby未経験者用にも使ってもらう必要が出てきたので、その説明資料として本稿を記す。本稿の特徴は下記。Windows版rubyの情…
Windowsにuruを入れてrubyのバージョン管理をする - Qiita
最近はuruがいいらしい。zipをダウンロードコマンドを実行してuru.ps1を作るuru…

Mac OS X

Mac OS X 10.15.4

brewでインストールできます。rbenvとruby-buildがインストールされます。

$ brew install rbenv

環境変数を追加します。筆者は .bash_profile 、.bashrcのファイル構成なので、.bashrc に追加しました。

6行全てをコピペして、ターミナルで実行してください。

cat <<'EOT'  >> ~/.bashrc

# rbenv
export PATH=$HOME/.rbenv/bin:$PATH
eval "$(rbenv init -)"
EOTCode language: Bash (bash)

いったんターミナルを閉じて、もう一度ターミナルを開きます。

$ rbenv --version
rbenv 1.1.2Code language: Bash (bash)

Ubuntu 18.04

rbenvとruby-buildの2つをgit cloneします。

$ git clone https://github.com/rbenv/rbenv.git      ~/.rbenv
$ git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/pluginsCode language: PHP (php)

環境変数を.bashrc に追加します。6行全てをコピペして、ターミナルで実行してください。

cat <<'EOT'  >> ~/.bashrc

# rbenv
export PATH=$HOME/.rbenv/bin:$PATH
eval "$(rbenv init -)"
EOTCode language: Bash (bash)

いったんターミナルを閉じて、もう一度ターミナルを開きます。

$ rbenv --version
rbenv 1.1.2-28-gc2cfbd1Code language: Bash (bash)

rbenvのサブコマンドに install が表示されない場合は、ruby-buildが認識されていません。~/.rbenv/plugins/ruby-buildにgit cloneしているか確認してください。

$ rbenv
rbenv 1.1.2-28-gc2cfbd1
Usage: rbenv <command> [<args>]

Some useful rbenv commands are:
   commands    List all available rbenv commands
   local       Set or show the local application-specific Ruby version
   global      Set or show the global Ruby version
   shell       Set or show the shell-specific Ruby version
   install     Install a Ruby version using ruby-build
   uninstall   Uninstall a specific Ruby version
   rehash      Rehash rbenv shims (run this after installing executables)
   version     Show the current Ruby version and its origin
   versions    List installed Ruby versions
   which       Display the full path to an executable
   whence      List all Ruby versions that contain the given executable

See `rbenv help <command>' for information on a specific command.
For full documentation, see: https://github.com/rbenv/rbenv#readme

Code language: Bash (bash)

rbenvの使い方

rbenvの使い方

インストール可能なバージョン一覧を表示します。

$ rbenv install --listCode language: Bash (bash)

特定のバージョンのrubyをインストールします。gemも同時にインストールされます。ここでは、2.7.1をインストールします。

$ rbenv install 2.7.1Code language: Bash (bash)

インストール済みのバージョンを表示します。systemは、rbenvインストール前からインストールされていた /usr/bin/ruby です。Max OS Xでは 2.6.3、Ubuntu 18.04では2.5.1です。

* system (set by /Users/aoki.makoto/.rbenv/version)
  2.7.1
Code language: Bash (bash)

global設定を2.7.1に切り替えます。

$ rbenv global 2.7.1

$ rbenv version
2.7.1 (set by /Users/aoki.makoto/.rbenv/version)

$ ruby --version
ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x86_64-darwin19]

$ gem --version
3.1.2

$ cat /Users/aoki.makoto/.rbenv/version
2.7.1Code language: Bash (bash)

別のディレクトリ、例えば ~/Documentsに移動して、local設定をsystemに切り替えます。

$ cd ~/Documents

$ rbenv local system

$ rbenv version
* system (set by /Users/aoki.makoto/Documents/.ruby-version)
  2.7.1

$ ruby --version
ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin19]

$ gem --version
3.0.3

$ cat .ruby-version 
systemCode language: Bash (bash)

シバンを記述するときは、#!/usr/bin/env ruby とします。rbenv local、rbenv globalの設定にしたがって、rubyが起動します。

#!/usr/bin/env ruby

puts RUBY_VERSIONCode language: Ruby (ruby)
$ ./version.rb
2.7.1

シバンを#!/usr/bin/rubyとすると、rbenvインストール以前の/usr/bin/rubyが起動します。

#!/usr/bin/ruby

puts RUBY_VERSIONCode language: Ruby (ruby)
$ ./version.rb
2.6.3Code language: Bash (bash)

おすすめ書籍

「プログラミングRuby1.9」の著者、DaveThomasやAndyHuntは「達人プログラマー」の著者ね

DaveThomas, ChadFowler, AndyHuntオーム社 2010
DaveThomas, ChadFowler, AndyHuntオーム社 2010
まつもとゆきひろ,David Flanagan オライリージャパン 2009
Yugui オライリージャパン 2008
タイトルとURLをコピーしました