&tag(RVM);
*目次 [#pe269018]
#contents
*参考情報 [#qc4c7c9a]
-[[RVM: Ruby Version Manager - RVM Ruby Version Manager - Documentation:http://beginrescueend.com/]]…公式
-[[rbenv]]
*基本 [#g7ec308e]
-複数のRubyを使い分けるための仕組み。
-ユーザーディレクトリ内部にインストールするのでsudoしなくて良い。
*RVM本体のインストール(2012/05/25(金)) [#q57b8d4c]
-以下のコマンドでインストールできる。
$ curl -L get.rvm.io | bash -s stable
-環境変数を読み込む("rvm_is_a_shell_function: command not found"というエラーが表示された場合rvmを一度実行したあと再度sourceすれば大丈夫だった)。.bashrc or .zshrcの末尾などに追加しておく。
$ source ~/.rvm/scripts/rvm
-実行に必要な環境などを表示。
$ rvm requirements
*RVM本体のインストール [#q540c475]
-[[RVM: Ruby Version Manager - RVM Ruby Version Manager - Documentation:http://beginrescueend.com/]]に書いてある手順で実行する。
-RVMをインストールする。2012/02/23(木)現在、安定版でgemsetのdefaultが保存されないという現象を確認。開発版だと大丈夫だった。
--安定版の場合
$ bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
--開発版の場合
$ bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )
-.bash_profileに環境設定が追加される(zshの場合.zshrcなどに移動しておく)。
[[ -s "/Users/tanaka/.rvm/scripts/rvm" ]] && source "/Users/tanaka/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
-評価する。
$ source ~/.bash_profile
-必要要件などを表示する。
$ rvm requirements
*運用 [#d35c2313]
**インストール可能なRubyを知る [#eb1774f4]
-rvmコマンドを実行することでインストール可能なRubyのバージョンが一覧表示される
$ rvm list known
**Rubyのインストール [#v77a819b]
-rvm install <Ruby名> でインストールできる。
rvm install 1.9.3-p194
***MacでXcode4.3以降を使う場合の注意事項 [#a301b576]
すんなりといかない。
''gcc4.2を使う'' ~
-[[OSX-GCC-Installer]]を利用してgcc4.2をインストールしておく。
-.zshrcなどに次の行を追加。
export CC=/usr/bin/gcc-4.2
''clangを使って頑張る'' ~
-[[Issue updating Ruby on Mac with Xcode 4.3.1 - Stack Overflow:http://stackoverflow.com/questions/9651670/issue-updating-ruby-on-mac-with-xcode-4-3-1]]が参考になる。
**Rubyの再インストール [#y09bd654]
-rvm reinstall <Ruby名>で再インストールできる。
**Rubyの削除 [#g2b1e1bf]
- rvm uninstall <Ruby名>で削除できる。
- rvm remove <Ruby名> でソース含めて削除できる。
**Rubyを選択する [#tbcbe60c]
- rvm use <Ruby名> で選択できる
rvm use 1.9.3-p194
- デフォルトを選択する場合
rvm use 1.9.3-p194 --default
**現在の状態を表示 [#i2d98312]
-現在のバージョンとgemsetを表示する。
rvm current
*gemset [#ubc4338a]
**gemsetとは何か [#we0a8da4]
-[[RVM: Ruby Version Manager - Gemset Basics:https://rvm.beginrescueend.com/gemsets/basics/]]
-1つのRubyバージョンに対して複数のgemsetと呼ばれる環境を作って切り替えることができる(1.9.3@aとか、1.9.3@bとか)。
**gemsetの生成 [#b534ce6e]
-gemset createを使う
rvm gemset create sample
*Tips [#m47e3c49]
**デフォルトを保存する [#n601ab93]
-明示的に保存しないかぎり、デフォルトバージョン、gemsetが保存されないので注意(次回ログイン時もとにもどってしまう)。
-保存するには、"--default use"を使う。
$ rvm --default use 1.9.3-p125@test
-新しいターミナルを起動し、"rvm list", "rvm gemset list"などを実行しデフォルトが保存されるかどうか確認すること。
**shebangはどうなる? [#md146c34]
-今まで#!/usr/local/bin/rubyとか#!/usr/bin/rubyとか書いていた場合次のように変更する(システムワイドで入れれば不要?)
#!/usr/bin/env ruby
-次のようなスクリプトで確認できる。
#pre{{
#!/usr/bin/env ruby
puts RUBY_DESCRIPTION
}}
*トラブルシューティング [#tb5a2ea7]
**Xcode4.3を使うといろいろトラブル [#q2a412e7]
-Xcode4.3/MacPorts/opensslなどのからみでトラブルてんこもりだった。
-[[Ruby 1.9.3 + Rails 3.2.1 で segmentation fault -> 解決 - さとうようぞうのblog:http://webcache.googleusercontent.com/search?q=cache:8cyJ2lNWdVYJ:somethingnew2.com/blog/archives/2012/02/ruby_193_rails_321_segmentation_fault.php+http.rb+segmentation+fault&cd=2&hl=ja&ct=clnk&gl=jp]]によると次の手順でインストールする。
#pre{{
$ rvm pkg install iconv
$ rvm pkg install openssl
$ rvm install ruby-1.9.3-p125 --with-openssl-dir=$rvm_path/usr --with-iconv-dir=$rvm_path/usr
}}
…これでいくかと思ったがrvm pkg installがうまく動かずだめ。
-osx-gcc-installerが必要?xcodeと同時にいれても大丈夫?
**Ubuntuでrailsをインストールしようとするとエラー [#de53d220]
-次のエラーが表示される
#pre{{
$ gem install rails
ERROR: Loading command: install (LoadError)
no such file to load -- zlib
ERROR: While executing gem ... (NameError)
uninitialized constant Gem::Commands::InstallCommand
}}
-入れ直す
$ rvm pkg install zlib
$ rvm reinstall ruby-1.9.3-p125
**Ubuntuでbundle installするエラー [#ea711b2e]
-nokogiriのエラー[[UbuntuでRails環境構築その2:http://namakesugi.blog42.fc2.com/blog-entry-99.html]]によると、bundle installする前に次の作業が必要
$ sudo apt-get install libxslt-dev libxml2-dev
-mysql2のエラー。
$ sudo apt-get install libmysqlclient-dev
-sqlite3のエラー
$ sudo apt-get install sqlite3 libsqlite3-dev
**CentOS6でbundle installするとエラー [#e08f94d9]
-nokogiriのエラー
$ sudo yum install libxml2-devel libxslt-devel
-mysql2のエラー
$ sudo yum install mysql-devel
-sqlite3のエラー
$ sudo yum install sqlite-devel
**CentOS5.5でrvmインストール時にerror:14090086:SSL [#ye1d8ad8]
-[[CentOS 5.5 に rvm で ruby をインストールする - xykの日記:http://d.hatena.ne.jp/xyk/20111214/1323859416]]によるとCentOS5.Xのサーバー証明書が古いのが原因らしい。次の手順で更新する。
#pre{{
# cd /etc/pki/tls/certs/
# cp ca-bundle.crt ca-bundle.crt.bak
# curl http://curl.haxx.se/ca/cacert.pem -o ca-bundle.crt
}}