Rubyの勉強を始めてみたくなったので、O'REILLYの「初めてのRuby」
を購入してみました。MacPortsで最新版のRubyを導入しつつ、1章から読み進めているのですが、早速ハマったところがあるのでそのメモを残しておきたいと思います。
Ruby1.9の導入
MacPortsでruby19の名前でインストールできます。
sudo port -d install ruby19
/usr/bin/ruby には、元からインストールされているrubyが入っているので、これをMacPortsでインストールしたものと入れ替えます。(シンボリックリンク張り替えちゃったけどこれでいいのかな?ruby_selectみたいのないのかな)
cd /usr/bin sudo mv ruby ruby.org sudo ln -s /opt/local/bin/ruby1.9 ruby
ruby --version
と、入力して
ruby 1.9.1 (2008-10-28 revision 19983) [i386-darwin9]
こんなかんじの出力になればOKだと思います。
日本語(マルチバイト)の利用
1.5.4制御式のあたりについて。通常だとマルチバイト文字の利用でエラーがでちゃいます。たとえば
p "こんにちわ!こんにちわ!><"
で、
odd.rb:8: invalid multibyte char (US-ASCII) odd.rb:8: syntax error, unexpected $end, expecting keyword_end
などとエラー文が出力されてしまいます。 これは、次のように冒頭に利用するエンコード方式をコメントで書けばOK
#!/usr/bin/ruby
を
#!/usr/bin/ruby # coding: UTF-8
に変更すればOK。
tkパッケージの利用
1.5.5のコールバックのあたりの話。実は冒頭のインストール方法だとtkパッケージがインストールされていないため、利用できません。(require文でコケる) なので、tkパッケージを有効にして入れ直します。variantsオプションで有効なインストールオプションを確認します。
$ port variants ruby19
ruby19 has the variants:
universal
c_api_docs: Generate documentation for Ruby C API
tk: Build using MacPorts Tk
mactk: Build using MacOS X Tk Framework
tk, mactkと似たようなものが2つあります。これ両方有効にしてインストールするとコケちゃいます。とりあえずmactkの方を有効にしてインストールしなおし。
sudo port install ruby19 +c_api_docs +mactk
ところがこれだとエラーでコケます。
Error: The following dependencies failed to build: doxygen graphviz pango urw-fonts
いろいろビルドに失敗しているみたいなので全部個別にインストール。
sudo port install urw-fonts sudo port install pango sudo port install graphviz sudo port install doxygen
この上で、もう一度インストールしなおし。
sudo port install ruby19 +c_api_docs +mactk
これで次のrequire文でコケません。
require "tk"
まとめ
ちょっとづつRubyもわかってきました。これから毎日1章づつくらいのペースで進めていきたいとおもいますよ!
- Newer: MecabとLingua::JA::Summarizeで文章のキーワード抽出をCakePHPで
- Older: 「FlashのCamera・Microphoneクラスを使うときの注意点」の注意点
Google Adsense
Social bookmark comment : 0
No comment.
Comment : 0
Trackback : 0
- TrackBack URL for this entry
- http://blog.katsuma.tv/mt-tb.cgi/174
- Listed below are links to weblogs that reference
- Mac OSXで初めてのRubyを始めてみました from blog.katsuma.tv
2008/11/10 (Mon)