Solaris10
Solaris10でのインストール方法を紹介します。
下準備
(-m64で) eXpat、ICUをインストールしておきます。prefix は /usr/localとします。
stmdのインストール
-
ここではデフォルトの形態素解析器にMeCabを指定しています。
$ tar zxf stmd-x.x.x.tar.gz $ cd stmd-x.x.x $ CFLAGS=-m64 LDFLAGS=-m64 configure --with-icu-config=/usr/local/bin/icu-config \ --with-defaultstemmer=MECAB \ --enable-mecab=yes \ --enable-kill3number=yes \ --with-mecab-config=/usr/local/bin/mecab-config $ make # make install
-
stmdが動作するかどうかの確認
$ cd t $ ./chk tst2.xml # <vector>[["コーディング",2],["タイプライター",1],... と出力されればOK
-
/etc/services に以下を追加
stmd 1234/tcp # stmd
-
/etc/inetd.conf に以下を追加
stmd stream tcp nowait nobody /usr/local/bin/in.stmd in.stmd
-
変更を反映
# inetconv -i /etc/inet/inetd.conf
inetd版は、次の手動で起動したデーモンがダウンしたときのバックアップになります。
-
stmdのデーモンを起動
$ /usr/local/bin/stmd -d -u /tmp/stmd.sock
このとき過去にstmdを起動したことがあるとき、/tmp/stmd.sockが残っていますので、起動する前に削除してください。
getassocのインストール
GETAROOTを/data/lib/getaとしています。
$ tar zxf getassoc-x.x.x.tar.gz
$ cd getassoc-x.x.x
$ CFLAGS=-m64 LDFLAGS=-m64 ./configure --with-icu-config=/usr/local/bin/icu-config \
--prefix=/data/lib/geta \
--enable-allowerror=yes \
--enable-xpthread=yes \ # Solaris は巨大メモリを掴んでの fork が苦手なので、pthreadを使うよう指示
--enable-lp64=yes # -m64 の場合
$ make
# make install
-
/etc/apache/httpd.conf に以下を追加
ScriptAlias /getassoc/ /data/lib/geta/wbin/getassoc/
メモ
共有ライブラリ版の作成は面倒。