2006年05月31日

さくらインターネットで和布蕪(MeCab)をインストールする方法

この文章は、さくらインターネット・スタンダードプラン(FreeBSD)でMeCab、ipadic、MeCab Perlモジュールをインストールする際のメモです。ここでのMeCabのバージョンは0.81です。最新版のMeCabではないので気をつけてください。

説明の都合上、カレントディレクトリを「/home/username/」とします。

表示の関係で本来、一行に記述しなければならないのに改行して表示されている個所があります。注意してください。

◆準備

アーカイブファイルをダウンロードします。

http://chasen.naist.jp/stable/ipadic/ipadic-2.4.4.tar.gz
http://prdownloads.sourceforge.jp/mecab/14968/mecab-0.81.tar.gz
http://prdownloads.sourceforge.jp/mecab/15083/mecab-perl-0.81.tar.gz

◆MeCabのインストール

実行ファイルは「/home/username/local」に作ることにします。

%cd ~
%mkdir local
%tar xvzf mecab-0.81.tar.gz
%cd mecab-0.81
%cd dic
%tar xvzf ~/ipadic-2.4.4.tar.gz
%cd ..
%./configure --prefix=/home/username/local --exec-prefix=/home/username/local
%make
%make install

◆MeCab Perlモジュールのインストール

はじめにMakefile.PLを修正します。mecab-configの場所をフルパスで指定するようにします。修正なしで実行すると「WriteMakefile: Need even number of args at Makefile.PL」というエラーが発生するはずです。

use ExtUtils::MakeMaker;
WriteMakefile(
'NAME' => 'MeCab'、
'CC' => `/home/username/local/bin/mecab-config --cxx`、
'LD' => `/home/username/local/bin/mecab-config --cxx`、
'INC' => `/home/username/local/bin/mecab-config --cflags`、
'LIBS' => `/home/username/local/bin/mecab-config --libs`、
'VERSION' => `/home/username/local/bin/mecab-config --version`、
'OBJECT' => 'MeCab_wrap.o'
);

修正が済んだら以下のコマンドを実行します。

%perl Makefile.PL
%make

これで終わりです。公式のインストールガイドには、つぎにスーパーユーザになって「make install」しろと書かれていますが、さくらインターネットでは権限の都合でエラーになります。

つぎの二つのファイルができているはずなので、これらのファイルをPerlのモジュールを置く場所に移動しておきます。

blib/arch/auto/MeCab/MeCab.so
blib/lib/MeCab.pm

仮に「/home/username/lib」に置くことにします。Perlで使うときはスクリプトの冒頭で

use lib "/home/username/lib"
use MeCab;

と書けばモジュールが読み込まれます。

◆気になりそうなこと

Q:ライトプランでMeCabをインストールするには?
A:ライトプランではシェルが使えないので、普通の手順ではコンパイルできません。スタンダードプランでコンパイルしたファイルをそっくりコピーすれば動くと思います。でもOSの種類やバージョンが一致していないと、だめかもしれません。

Q:共有サーバでコンパイルしていいんですか?
A:問題ないと思います。でも計算機資源を消費するので、とくにWWWサーバとして忙しい時間帯(21時から午前1時あたり)に作業するのは避けた方がよいでしょう。

◆関連リンク

さくらインターネットにてMeCabとNamazuをインストールする方法
http://elementary.matrix.jp/htimanos.html
MeCab 0.81 のインストール方法
http://www.asahi-net.or.jp/~yw3t-trns/namazu/mecab/inst081.htm
MeCab: Yet Another Part-of-Speech and Morphological Analyzer
http://mecab.sourceforge.jp/
posted by 管理人 at 01:17| Comment(0) | TrackBack(3) | 開発記録