RVM

since 2010-03

ruby の複数バージョンを切り替えて使えるためのツール。

Mountain Lion で 1.9.3

since 2013-04-10

$ rvm autolibs enable
$ sudo rvm install 1.9.3
$ rvm use 1.9.3 --default

rvmsudo が "Warning: can not check `/etc/sudoers` for `secure_path`" という警告を出すという話

export rvmsudo_secure_path=1

ruby_on_rails

$ rvmsudo gem install rails sqlite3

rhodes

Mac に RVM を入れる

since 2011-07-21

Leopard 以降の Mac には ruby も gem も rails も入っている。

http://developer.apple.com/tools/developonrailsleopard.html

しかし、バージョンが古いので、新しいバージョンを入れたい。

heroku記事 によると、RVM で Ruby 1.9.2 を使うのがおすすめという話。

ほとんど開発環境が入っていない Snow Leopard を使う。

まず git を入れる。git-1.7.6-x86_64-snow-leopard.dmg を使った。

RVMのサイト https://rvm.beginrescueend.com/ によると、下記のやり方で:

bash < <(curl -s https://rvm.beginrescueend.com/install/rvm)

長いメッセージが出てくるのだが、注目すべきは下記:

For Snow Leopard be sure to have Xcode Tools Version 3.2.1 (1613) or later
  You should download the latest Xcode tools from developer.apple.com.
    (This is since the dvd install for Snow Leopard contained bugs).

Xcode がやっぱり必要という話。Apple ID で開発者登録が必要。

http://developer.apple.com/devcenter/mac/index.action

Lion を買えば Xcode4.1 が無料。Snow Leopard のままだと Xcode3 だけ無料。。

Snow Leopard のまま xcode_3.2.6_and_ios_sdk_4.3.dmg を使うことにした。

無事に Xcode はインストールできた。

$ ls /Developer/
About Xcode and iOS SDK.pdf	Icon?
About Xcode.pdf			Library
Applications			Makefiles
Documentation			Platforms
Examples			SDKs
Extras				Tools
Headers				usr

RVM に path を通すように .bash_profile を書き換える:

$ echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile

ターミナルを開き直す:

$ which rvm
/Users/nishimotz/.rvm/bin/rvm

Heroku のおすすめ通りに 1.9.2 を入れる:

$ rvm install 1.9.2 && rvm use 1.9.2 --default

数分で終わった:

$ which ruby
/Users/nishimotz/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
$ ruby -v
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-darwin10.8.0]
$ which gem
/Users/nishimotz/.rvm/rubies/ruby-1.9.2-p290/bin/gem
$ gem -v
1.6.2

続きは ruby_on_rails へ。

UbuntuへのRVMのインストール

/usr ではなくホームディレクトリに ruby 環境を入れる。 ~/.rvm があっという間に400MB近く増えるので要注意。

ruby 1.9.1 + ruby_on_rails 3 beta 環境を作るために使ってみる。

Ubuntu 9.04 (VMware guest)環境。アカウントは nishi でログインシェルは bash である。

事前にsudo aptitudeで入れておくべきパッケージ: git-core curl

$ mkdir -p ~/.rvm/src/ && cd ~/.rvm/src && rm -rf ./rvm/ && git clone git://github.com/wayneeseguin/rvm.git && cd rvm && ./install

rvm コマンドにパスを通す。/home/nishi/.bashrc の末尾に追加。

if [[ -s /home/nishi/.rvm/scripts/rvm ]] ; then source /home/nishi/.rvm/scripts/rvm ; fi

新しい端末のタブを開く。

Ubuntu 9.10 の場合

Ubuntu 9.10 の場合に必要とされるopenssl関連の手順(失敗するとここからやり直し)

$ rvm package install openssl
Extracting openssl-0.9.8k.tar.gz to /home/nishi/.rvm/src
Configuring openssl in /home/nishi/.rvm/src/openssl-0.9.8k.
Compiling openssl in /home/nishi/.rvm/src/openssl-0.9.8k.
Installing openssl to /home/nishi/.rvm/usr

やり直すときはいったん remove する

$ rvm remove 1.9.1
Removing /home/nishi/.rvm/src/ruby-1.9.1-p378...
Removing /home/nishi/.rvm/rubies/ruby-1.9.1-p378...

オプションをつけてインストール。

$ rvm install 1.9.1 -C --with-openssl-dir=/home/nishi/.rvm/usr/

rvm を使う

Ubuntu 9.04 の場合はオプションなしでうまくいった。

$ rvm install 1.9.1

を実行すると ruby-1.9.1-p378 のインストールが始まる。

しばらくして終わる。

nishi@ubuntu-vm:~$ rvm list

rvm Rubies

   ruby-1.9.1-p378 [ i386 ]

System Ruby

   system [ i386 ]

いま入れた 1.9.1 を使えるようにする。

nishi@ubuntu-vm:~$ rvm 1.9.1

どこに実体が?

nishi@ubuntu-vm:~$ which ruby
/home/nishi/.rvm/rubies/ruby-1.9.1-p378/bin/ruby

ちなみに gem も同じ場所にあった。

念のためバージョン確認。

nishi@ubuntu-vm:~$ ruby -v
ruby 1.9.1p378 (2010-01-10 revision 26273) [i686-linux]

これをデフォルトにする。

$ rvm 1.9.1 --default

新しい端末タブで ruby が同じであることが確認できる。

続きは ruby_on_rails へ。

選べる処理系

rvm list known

rvm の更新

since 2013-04-07

http://stackoverflow.com/questions/5804428/error-on-installing-ruby-with-rvm

rvm get head && rvm-smile
あるいは
rvm get head && rvm get stable && rvm install 1.9.3

文献


Ruby 逆引きレシピ すぐに美味しいサンプル&テクニック 232 (PROGRAMMER’S RECIPE)
島田 浩二 設樂 洋爾 村田 賢太 前田 智樹 谷口 文威
翔泳社
売り上げランキング: 166567

rvm.txt · 最終更新: 2013/04/10 11:56 by Takuya Nishimoto
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0