Ludia / インストール手順メモ

今さらながらLudiaをインストールして、検証を行なってみることにしました。

今回は依存パッケージを個別にインストールする方法でインストールしていきます。依存するパッケージは以下のファイルになります。形態素解析による分かち書きを利用しますので、MeCabをインストールします。(分かち書きをしないのであれば、MeCabは不要です)

インストールに必要なパッケージは以下のサイトからそれぞれダウンロードして下さい。

またOSおよびPostgreSQLは以下のバージョンにて確認しています。またデータベースのエンコーティングは「EUC-JP」に設定してあります。

インストール手順は、Ludiaのソースファイル内のINSTALLファイルに記載されている通りになります。

MeCabのインストール

本体のインストールは以下の通りです。

$ ./configure
$ make
$ sudo make install

IPAの辞書のインストールは以下の通りです。

$ ./configure
$ make
$ sudo make install

Sennaのインストール

Sennaのインストールは、以下の通りです。

$ ./configure
$ make

nfkc.cのコンパイルで固まり、待てど暮らせど終わりそうにない。


一部のコンパイラコンパイル時間が恐ろしくかかるようです。15分ほど待ってもコンパイルが終わらない場合には、Ctrl-Cで強制終了してください。

そして、以下のいずれかの方法で再度configureを実行してください。

  • --disable-nfkcオプションを指定してconfiugreを実行
  • 環境変数CFLAGSに-O0を指定してconfigureを実行

---disable-nfkcオプションを指定すると、Unicode文字列の正規化機能が無効になり、スキップできるのですが、無効にしたくないのでなんか上手い方法はないかと調べてみると以下のサイトで情報を発見しました。


回避策としては、configure後〜make前に(または、nfkc.c コンパイルを CTRL+C で中断してから)↓を実行すると、それほど待たされずに nfkc.c をコンパイルできます。

ということだそうで、個別にnfkc.cのコンパイルすることでよいみたいです。

$ ( cd lib; ../libtool --tag=CC --mode=compile \
gcc -I. -I.. -Wall -O0 -fno-strict-aliasing -g -MT nfkc.lo \
-MD -MP -MF .deps/nfkc.Plo -c -o nfkc.lo nfkc.c )

その後、もう一度コンパイルし直しました。

$ make
$ sudo make install

Sennaのログファイルを出力できるように設定します。postgresユーザに対して書き込みできるように権限を与えます。

$ sudo mkdir -p /var/senna/log
$ sudo chown postgres:postgres /var/senna/log

エンコーディングUTF-8などの場合、コンパイルオプションや、senna.confの作成が必要なので注意して下さい。

Ludiaのインストール

Ludiaのインストールは、以下の通りです。

$ ./configure --with-pg-config=/usr/local/pgsql/bin/pg_config \
                --with-senna-cfg=/usr/local/bin/senna-cfg
$ make
$ sudo make install