debian etchでgemのspreadsheetライブラリを使うと,to_datetimeメソッドがないぞというエラーが出て怒られる.
/var/lib/gems/1.8/gems/ruby-ole-1.2.8.1/lib/ole/types/base.rb:84:in `send': undefined method `to_datetime' for Fri Dec 19 11:39:04 +0900 2008:Time (NoMethod\Error)
これはetchのruby1.8.5だと,require ‘date’してもTime.to_datetimeが定義されないことによる問題.
最新の1.8.7のソースパッケージを取ってきてdate.rb, date2.rb等をコピーすることで回避できる.
$ wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p72.tar.gz $ tar xzf ruby-1.8.7-p72.tar.gz $ sudo mv /usr/lib/ruby/1.8/date.rb \ /usr/lib/ruby/1.8/date.rb.bak $ sudo mv /usr/lib/ruby/1.8/date2.rb \ /usr/lib/ruby/1.8/date2.rb.bak $ sudo mv /usr/lib/ruby/1.8/date \ /usr/lib/ruby/1.8/date.bak $ sudo cp -r ruby-1.8.7-p72/lib/date* /usr/lib/ruby/1.8/