お久しぶりです。
サークルでRubyの勉強をちまりちまりと始めました。
はてぶもRubyが増えて参りましたが、まだ慣れません。
Pythonが長かったというのもあって、Pythonの記法で書いてミスる事が多いですね。
こちらの学習環境は以下の通りです。
Rubyのバージョンは以下のようにして確認します。
$ ruby --version ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin12.2.0]
当面はコマンドライン上でお遊びとなるでしょう。
知識の浅い富雄さん「あーこれでruby勉強できるわー」
0. 準備したときの話
さてここで、最初の状態を確認してみましょう。
$ ruby --version ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]
当時でも最新じゃなかったので、とりあえず homebrew で ruby の最新版を入れる事に。
$ brew install ruby
これでおk。最新版がするすると入っていきます。
$ ruby --version ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]
知識の浅い富雄さん「さっきhomebrewで入れたのに! 何でバージョン新しくなってないの!?」
環境はそんなに簡単に整いません。さて、こっからが本題です。
1. homebrewで管理されている場合
OSがMacだったら、macportsかhomebrewかそこらで管理されていると思います。
homebrewで入れたものがどこに行くのか、わからなかったので調べました。
/usr/local/Cellar/
どうやら homebrew を使って入れたものはここに入っているようです。
つまり、homebrewで入れたrubyはここに。
/usr/local/Cellar/ruby/1.9.3-p194/bin/ruby
さて一方、rubyというコマンドはどこにいるのでしょう。
$ which ruby /usr/bin/ruby
はい余裕で違うーーーー
自動的にここに ruby の alias が振り直される訳ではないですね。
そして、Macでデフォルト状態なので bash です。
csh でも tcsh でもないので rehash などと言うコマンドもありません。
ということで、自分で alias を振る事にしました。
2. bashrcを書けばいいのね
知識の浅い富雄さん「.bashrc 書いて source ~/.bashrc すれば余裕だーーーー」
.bashrcの内容はこんな感じ。
alias ruby='/usr/local/Cellar/ruby/1.9.3-p194/bin/ruby'
これだけでいいよ。とりあえず ruby のバージョンさえ変われば。
という感じ丸見え。
$ source ~/.bashrc
これで、再読み込みも完了したし余裕ですな。という雑な感じ。
$ ruby --version ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin12.2.0]
よしよし。これで勉強始められるじゃないか。
3. 再起動しました
知ったかぶりの富雄さん「今日もRuby研の課題やろう。あ」
vim 上で : を押し、上キーを連打してしまった富雄さんはこんな事に気付くのです。
$ ruby --version ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]
何故こんな事に。
もう一度、source コマンドに頼る富雄さん。
.bashrc がおかしいのだ。きっとそうに違いないのだ。
......違くない。
毎回 .bashrc を読みにいっていない様子。
ちょっと調べると、.bash_profile を書かねばならぬようです。
if [ -f ~/.bashrc ]; then . ~/.bashrc fi
とりあえず、これで毎度 .bashrc を読みにいってくれるようです。
x. 最後に
既に、そこそこ回数をこなした後なので、まとめて bitbucket に放り込む事にしました。
https://bitbucket.org/tomio2480/ruby_practice/
ちなみに、前回はライフゲームを書いてみようということだったので書いてみました。
しかし、あってるのかどうなのか全くわからない......。
いいデバッグの方法とかあるんでしょうか......?