Last active
December 18, 2015 05:59
-
-
Save kouyataifu4/5737252 to your computer and use it in GitHub Desktop.
rbenv と ruby-buildのつかいかた rurema 用
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
= rbenv + ruby-build | |
この記事に載っているソフトウエアのバージョンは随時変わる可能性がありますので | |
定期的に更新が必要となります。 | |
== はじめに | |
本記事の流れ | |
1. git のインストール | |
2. 最新版rbenv のインストール | |
3. ruby-buildのインストール | |
4. いろいろなバージョンのrubyのインストール | |
5. rbenvの使い方 | |
6. るりま執筆用に便利なpluginの紹介 | |
7. rbenv + ruby-buildのアンインストール | |
各アプリをLinuxのディストリビューションが提供している場合は | |
apt-get 等を用いる事によりrbenv ruby-buildがインストールできるかもしれません。 | |
ここでは、Ubuntu 12.04 LTS、bash環境を使用し、現時点での最新版のrbenv+ruby-buildをインストールします。 | |
== git をインストール | |
rbenvはgitを使ってインストールするのが簡単ですのでgitをインストールします。 | |
1. 簡単な方法 | |
sudo apt-get install git | |
2. ソースファイルからインストール | |
ここでは解説しませんが、例えば、「git install」をキーワードにしてググってみると | |
検索の上位に有用な記事がたくさんあります。 | |
== 最新版rbenvのインストール | |
https://github.com/sstephenson/rbenv | |
が配布元のサイトであり、インストールについて参考になります。 | |
本記事では適当なディレクトリに"wk_rurema" ディレクトリをつくりその中にファイルを作成します。 | |
インストール先を"~/.rbenv"等に変更する場合は該当する部分を変更してください。 | |
また環境変数は~/.bashrcに設定していますが、 | |
お使いのシステム環境に応じて~/.bash_profile, ~/.profileであったりします。 | |
$ git clone git://github.com/sstephenson/rbenv.git ~/wk_rurema/rbenv | |
Cloning into '/home/kouya/wk_rurema/rbenv'... | |
remote: Counting objects: 1631, done. | |
remote: Compressing objects: 100% (662/662), done. | |
remote: Total 1631 (delta 1050), reused 1460 (delta 937) | |
Receiving objects: 100% (1631/1631), 235.72 KiB | 139 KiB/s, done. | |
Resolving deltas: 100% (1050/1050), done. | |
=== rbenv の環境変数の設定 | |
rbenvのディレクトリにあるREADME.mdの指示を参考にして | |
環境変数PATH 及び rbenvの初期化について設定します。 | |
また、rbenvのディレクトリの位置を示すRBENV_ROOTの設定も行います。 | |
$ echo 'export PATH="~/wk_rurema/rbenv/bin/:$PATH"' >> ~/.bashrc | |
$ echo 'export RBENV_ROOT=~/wk_rurema/rbenv' >> ~/.bashrc | |
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc | |
$ source ~/.bashrc | |
本記事を作成した時点では、バージョン 0.4.0がインストールされています。 | |
この時点ではrbenvのサブコマンドにまだ "install" が無いことに注意してください。 | |
$ rbenv | |
rbenv 0.4.0-48-g5130b41 | |
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 | |
rehash Rehash rbenv shims (run this after installing executables) | |
version Show the current Ruby version and its origin | |
versions List all Ruby versions available to rbenv | |
which Display the full path to an executable | |
whence List all Ruby versions that contain the given executable | |
== ruby-buildのインストール | |
git経由でruby-buildを入手します。 | |
$ git clone https://github.com/sstephenson/ruby-build.git ~/wk_rurema/rbenv/plugins/ruby-build | |
rbenvのサブコマンド群の中に"install"が追加されているならばruby-buildのインストールは成功です。 | |
$ rbenv | |
rbenv 0.4.0-48-g5130b41 | |
Usage: rbenv <command> [<args>] | |
(略) | |
install Install a Ruby version using the ruby-build plugin | |
uninstall Uninstall a specific Ruby version | |
(略) | |
See `rbenv help <command>' for information on a specific command. | |
For full documentation, see: https://github.com/sstephenson/rbenv#readme | |
== いろいろなバージョンのrubyのインストール | |
下記コマンドでruby-buildでインストールできる2.0.0の種類を知ることができます。 | |
$ rbenv install 2.0.0 | |
(中略) | |
The following versions contain `2.0.0' in the name: | |
2.0.0-dev | |
2.0.0-p0 | |
2.0.0-p195 | |
2.0.0-preview1 | |
2.0.0-preview2 | |
2.0.0-rc1 | |
2.0.0-rc2 | |
maglev-2.0.0-dev | |
rbx-2.0.0-dev | |
rbx-2.0.0-rc1 | |
(後略) | |
ここでは執筆時点で最新のパッチレベルである2.0.0-p195をインストールしてみましょう。 | |
$ rbenv install 2.0.0-p195 | |
Downloading ruby-2.0.0-p195.tar.gz... | |
-> http://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p195.tar.gz | |
Installing ruby-2.0.0-p195... | |
Installed ruby-2.0.0-p195 to /home/kouya/wk_rurema/rbenv/versions/2.0.0-p195 | |
# ここでOpenssl ライブラリが無い場合はエラーがでるかもしれません。 | |
# その場合は例えば下記コマンドでインストールしましょう。 | |
# sudo apt-get install libssl-dev | |
=== インストール後の設定 | |
# ruby 2.0.0 インストール後のおまじない。 | |
$ rbenv rehash | |
# rbenv で扱い可能なrubyの種類を表示 | |
$ rbenv versions | |
* system | |
2.0.0-p195 | |
# 2.0.0-p195へ切り替えテスト | |
$ rbenv shell 2.0.0-p195 | |
$ ruby -v | |
ruby 2.0.0p195 (2013-05-14 revision 40734) [i686-linux] | |
ruby の切り替えがうまくいかない場合は | |
1. source ~/.bashrc | |
2. いったんログアウトしてみる | |
これらをするとうまくいくかもしれません。 | |
うまくいったら、その他のバージョン、例えば1.8.7, 1.9.3 もインストールしてみましょう。 | |
== rbenv の使い方 | |
rbenv はRuby バージョンの切り替えに下記のようなコマンドを準備しています。 | |
$ rbenv | |
Usage: rbenv <command> [<args>] | |
(略) | |
Some useful rbenv commands are: | |
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 | |
(略) | |
=== global | |
"global"ではすべてのシェルのRuby バージョンを指定できます。 | |
~/wk_rurema/temp$ rbenv versions | |
system | |
1.8.7-p371 | |
1.9.3-p429 | |
* 2.0.0-p195 (set by RBENV_VERSION environment variable) | |
# 2.0.0 が指定されている。 | |
~/wk_rurema/temp$ rbenv global 1.9.3-p429 | |
~/wk_rurema/temp$ rbenv versions | |
system | |
1.8.7-p371 | |
* 1.9.3-p429 (set by /home/kouya/wk_rurema/rbenv/version) | |
2.0.0-p195 | |
kouya@ubuntu:~/wk_rurema/temp$ ruby -v | |
ruby 1.9.3p429 (2013-05-15 revision 40747) [i686-linux] | |
=== local | |
"local"では実行したディレクトリに".ruby-version"というファイルを作り | |
"global"のバージョン指定を上書きすることができます。 | |
例えば、~/wk_rurema/tempディレクトリで2.0.0-p195を使うように設定する場合は下記のようになります。 | |
~/wk_rurema/temp$ rbenv local 2.0.0-p195 | |
~/wk_rurema/temp$ ruby -v | |
ruby 2.0.0p195 (2013-05-14 revision 40734) [i686-linux] | |
# 試しに1つ上のディレクトリに移動してからRubyのバージョンを確認する。 | |
~/wk_rurema/temp$ cd .. && ruby -v | |
ruby 1.9.3p429 (2013-05-15 revision 40747) [i686-linux] | |
# local versionは下記の方法でやめることができます。 | |
~/wk_rurema/temp$ rbenv local --unset | |
=== shell | |
"shell"では現在のシェルでのRuby バージョンを指定できます。 | |
例えば設定した後にいったんログアウトするとその設定は無くなることになります。 | |
$ rbenv shell 1.8.7-p371 | |
$ ruby -v | |
ruby 1.8.7 (2012-10-12 patchlevel 371) [i686-linux] | |
#例えば、いったんログアウトする。 | |
$ ruby -v | |
ruby 1.9.3p429 (2013-05-15 revision 40747) [i686-linux] | |
== るりま執筆用に便利なpluginの紹介 | |
* rbenv-gem-rehash : | |
gem install のあとに rbenv rehash を実行するプラグインです。 | |
なおrehash しないと gem で入れたコマンドが見つからない事になります。 | |
# インストール方法 | |
$ git clone https://github.com/sstephenson/rbenv-gem-rehash.git ~/wk_rurema/rbenv/plugins/rbenv-gem-rehash | |
* rbenv-default-gems : | |
新しいRubyをインストールした時に自動的にインストールするgemを指定することができます。 | |
本記事では、"default-gems"というファイルを作成し、 | |
そこに"bundler", "bcat"と記述することによりこれらのインストールの手間を省いています。 | |
# インストール方法 | |
$ git clone https://github.com/sstephenson/rbenv-default-gems.git ~/wk_rurema/rbenv/plugins/rbenv-default-gems | |
# default-gemsの設定例 | |
$ cat ~/wk_rurema/rbenv/default-gems | |
bundler | |
bcat ~>0.6 | |
$ rbenv install 1.9.3-p429 | |
(略) | |
Downloading ruby-1.9.3-p429.tar.gz... | |
-> http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p429.tar.gz | |
Installing ruby-1.9.3-p429... | |
Installed ruby-1.9.3-p429 to /home/kouya/wk_rurema/rbenv/versions/1.9.3-p429 | |
Fetching: bundler-1.3.5.gem (100%) | |
Successfully installed bundler-1.3.5 | |
1 gem installed | |
Installing ri documentation for bundler-1.3.5... | |
Installing RDoc documentation for bundler-1.3.5... | |
Fetching: rack-1.5.2.gem (100%) | |
Fetching: bcat-0.6.2.gem (100%) | |
Successfully installed rack-1.5.2 | |
Successfully installed bcat-0.6.2 | |
2 gems installed | |
(略) | |
* rbenv-each: rbenv install で入れた全ての Ruby を使って実行する。 | |
$ git clone https://github.com/chriseppstein/rbenv-each.git ~/wk_rurema/rbenv/plugins/rbenv-each | |
例えば、このようなサンプルスクリプトを用意し実行権限を与えると | |
インストールしたバージョンすべてについてスクリプトを実行できます。 | |
#!/usr/bin/env ruby | |
# 実行しているRubyのバージョンとパッチレベルを表示するサンプルスクリプト | |
puts "#{RUBY_VERSION} - #{RUBY_PATCHLEVEL}" | |
$ rbenv each -v ./test.rb | |
[1.8.7-p371]: ./test.rb | |
****************************************************************** | |
1.8.7 - 371 | |
[1.9.3-p429]: ./test.rb | |
****************************************************************** | |
1.9.3 - 429 | |
[2.0.0-p195]: ./test.rb | |
****************************************************************** | |
2.0.0 - 195 | |
== rbenv + ruby-buildのアンインストール | |
この記事の場合は | |
1. wk_ruremaディレクトリを削除 | |
2. .bashrc から設定した環境変数を消す | |
の工程が必要です。 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment