Rails: Mac OS では mecab を MacPorts で入れること

お客様の MacRails の開発環境をセットアップすることになりました。

普段は Ubuntu しか使っていないので、四苦八苦。いろいろと調べて分かったのは、MacPorts の整備がかなり進んでいて、これを通じてほとんど何でも入手できるということ。全部コンパイルしているみたいで非常に時間がかかるのが難点ですが、依存関係で止まってしまうこともなく、とても良い印象を受けました。

さて、今回の開発案件では mecab を使うのですが、Ubuntu 環境では動くコードが Mac 環境では Segmentation Fault を起こすという問題に直面しました。

Google で調べると、いろんな人がいろんなことを書いていますが、2011年1月時点での状況では、MacPortsmecab 等をインストールするのが最善。


$ sudo port install mecab
$ sudo port install mecab-ipadic-utf8
$ sudo port install rb-mecab
$ sudo vi /opt/local/etc/mecabrc

  • -

dicdir = /opt/local/lib/mecab/dic/ipadic-utf8

  • -

この手順では、ruby 自体も MacPorts でインストールされます。そして、こちらの ruby 環境に rubygems とか rails とかをインストールします。

つまり、Mac には ruby が初めからインストールされているけれども、それは使わない、そちらの環境に Rails をインストールしても無駄になる、ということです。

[参考資料]

[後日談]

一応 Mac に開発環境をセットアップすることには成功したのですが、どうしてもOSレベルのエラーが出てRailsアプリケーションが動きませんでした。

仕方がないので、VMware FusionUbuntu 10.10の仮想マシンを作って、そこに開発環境をセットアップ。あっという間に作業が終わり、やっぱり慣れた環境がいいなぁ、としみじみ感じました。

手順の慣れもあるけれど、apt-get でのインストールは途中でコンパイルしないのでMacPortsと比べると単純にインストール所要時間が短いという点も大きいと思います。