タグ

rbenvとRubyに関するsupermomongaのブックマーク (5)

  • rbenv + ruby-build はどうやって動いているのか - takatoshiono's blog

    rbenv といえば 複数バージョンの Ruby を切り替えて使うための環境を提供してくれる便利なツールとして欠かすことのできないものですが、機会があってそれがどうやって動いているか調べたので、ここに書いておきます。また ruby-buildruby をインストールするためによく使われている(というか使ってない人いないのでは)rbenv のプラグインです。rbenv install というコマンドは ruby-build が提供しています。これについても一緒に書きます。 はじめに断っておきますが、間違ったことを書いているかもしれないのでその辺はご了承ください。また、将来 rbenv の変更によって変わってしまう部分もあるかもしれません。 また rbenv のドキュメントはとても充実しているので、それを読めばここに書いてあることはだいたいわかると思います。 もくじ rbenv のインス

    rbenv + ruby-build はどうやって動いているのか - takatoshiono's blog
  • rbenvは何をしているのか? - ザリガニが見ていた...。

    ~/.rbenv/以下に複数のRubyバージョンをインストールして、それぞれのRuby環境を切り替える仕組みを提供する。 ~/.rbenv/ (rbenvがRubyを管理するルートフォルダ) ~/.rbenv/shims/ (rubyやgemがインストールするコマンドへのラッパーを保存しておくフォルダ) ~/.rbenv/version (global環境のRubyバージョンを記録するファイル) ~/.rbenv/versions/ (Rubyの各種バージョンをインストールするフォルダ) Ruby環境の構造 例えば、rbenvがインストールしたRuby-1.8.7-p375は、以下のような構造となっている。 ~/.rbenv/versions/1.8.7-p375/bin/(実行コマンドを含む:erb gem irb rake rdoc ri ruby testrb) ~/.rbenv/v

    rbenvは何をしているのか? - ザリガニが見ていた...。
  • rbenv のメカニズム - @kyanny's blog

    rbenv 環境下で実行された Ruby プログラムの中から他の Ruby プログラムを起動するときに、 rbenv 環境をリセットしたい―要するに別のバージョンの Ruby で外部プログラムを実行したい―という事情があったので rbenv のメカニズムについて調べた。 rbenv 環境下で ruby コマンドを実行するとき、実際にコンパイルされた ruby バイナリが直接実行されているわけではない。 rbenv 環境をお膳立てした上で ruby バイナリを exec するラッパーのシェルスクリプトが実行される。こういうものを binstub と呼ぶ。 binstub である ruby という名前のシェルスクリプトの中身をみてみると、最終的に rbenv exec というサブコマンドを呼び出している。 rbenv のサブコマンドはリポジトリでいうと libexec ディレクトリ以下にある。

    rbenv のメカニズム - @kyanny's blog
  • senny.ch is coming soon

    is a totally awesome idea still being worked on. Check back later.

  • rvmやめてrbenvにしました

    rvmやめてrbenvにしました。最初はrvmつかってけど、rvmが重厚でそんなに機能にいらないと思ったので、軽量で扱いやすそうなrbenvを使ってrubyを入れなおしました。 rvmはcdコマンドとかを上書いているのとかも気持ち悪かったです。。。libyamlが入って無い場合は予めhomebrewで入れておいてください。ruby-1.9.3を入れる場合は必須です。無いと再度rubyをコンパイルすることになります >_<作業手順$ rvm implodebashrc bash_profileから設定を消す$ source .bash_profile これ忘れるとcdコマンドでwarnが出る!$ git clone git://github.com/sstephenson/rbenv.git .rbenv$ echo ‘export PATH=“$HOME/.rbenv/bin:$PATH”

    rvmやめてrbenvにしました
  • 1