@daigoroubotをMac OS Xで動かすまでのメモです。 なんて需要が無さそうな記事なんだ!
Rubyとgemををインストール
とりあえず、バージョンは次のような感じで。インストール方法はこれを参考にしてください。
- ruby 1.9.3p194
- gem 1.8.24
required gems
gem install oauth json sqlite3 twitter tweetstream unicode_math
MeCabを使えるようにしておく
homebrewを導入しているなら、これでok。
Mac用のメモですが、Ubuntuならbrew
の代わりにapt-get
など、環境に合わせた適当なパッケージ管理システムにすれば普通に動くと思います。
brew install mecab mecab-ipadic
MeCabのRubyバインディングをする
- ここからbrewで入れたMeCabと同じバージョンのRubyバインディングをダウンロードする。
tar -jxf mecab-ruby-xxx.tar.gz
などで解凍。README
の指示通りに作業する。
もし次のようなエラーが出たら、extconf.rb
を編集する必要があるよう。
(参考:MacPortsで、mecabと、mecab-rubyのインストール)
dyld: lazy symbol binding failed: Symbol not found: __ZN5MeCab12getLastErrorEv
Referenced from: /Users/kobayashi/.rvm/rubies/ruby-1.8.7-p174/lib/ruby/site_ruby/1.8/i686-darwin10.7.0/MeCab.bundle
Expected in: flat namespace
dyld: Symbol not found: __ZN5MeCab12getLastErrorEv
Referenced from: /Users/kobayashi/.rvm/rubies/ruby-1.8.7-p174/lib/ruby/site_ruby/1.8/i686-darwin10.7.0/MeCab.bundle
Expected in: flat namespace
extconf.rb
に次のように$LDFLAGS
を追加します。
# extconf.rb
require 'mkmf'
mecab_config = with_config('mecab-config', 'mecab-config')
use_mecab_config = enable_config('mecab-config')
+$LDFLAGS += ' -L' + `#{mecab_config} --libs-only-L`.chomp
`mecab-config --libs-only-l`.chomp.split.each { | lib |
have_library(lib)
}
$CFLAGS += ' ' + `#{mecab_config} --cflags`.chomp
have_header('mecab.h') && create_makefile('MeCab')
参考: MacにMecabとmecab-rubyをインストールして形態素解析。辞書はIPA辞書、NAIST辞書、UniDicの3種:Garbage In Garbage Out