cygwinでもrubyを使いたいのでrbenvを導入した。導入プロセスと起こった問題への対処法をメモしておく。
導入手順
こちらの記事が詳しい。
Ruby on Rails 3.2 を Cygwin にインストールする手順をかなり丁寧に説明してみました - Rails 雑感 - Ruby on Rails with OIAX
基本的にはrbenvとruby-buildをgithubから持ってくればOKということになる。
$ cd ~/
$ git clone git://github.com/sstephenson/rbenv.git .rbenv
$ mkdir -p ~/.rbenv/plugins
$ cd ~/.rbenv/plugins
$ git clone git://github.com/sstephenson/ruby-build.git
そして.bashrc
なり.zshrc
なりに追記し、
export PATH="~/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
それを読みなおす。
$ . ~/.bashrc
ここで問題がおこらなければあとはお好みのRubyをインストールすれば良い。
$ rbenv install 2.1.2
$ rbenv rehash
エラー発生
ところが僕の環境では$ . ~/.bashrc
のタイミングで次のようなエラーが出た。
/cygdrive/c/home/.rbenv/bin/rbenv: line1: ../libexec/ruby: No such file or directory
調べてみると、~/.rbenv/bin/rbenv
は~/.rbenv/libexec/rbenv
へのシンボリックリンクになっているべきらしいのだが、cloneしたものではそのようになっていなかった。
そこで元々あるものは退避しておき、シンボリックリンクを貼り直した。
$ mv ~/.rbenv/bin/rbenv ~/.rbenv/bin/rbenv-org
$ ln -s ~/.rbenv/libexec/rbenv ~/.rbenv/bin/rbenv
これで$ . ~/.bashrc
が失敗しなくなった。