インストール/Debian|Ubuntu の変更点

Top > インストール > Debian|Ubuntu


Debian GNU/LinuxおよびUbuntuでのインストール方法を紹介します。

* 下準備
apt-getによる必要なプログラム、ライブラリのインストール
 $ sudo apt-get install gcc g++ make apache2 bison libexpat1-dev libicu-dev 

* stmdのインストール
ここではデフォルトの形態素解析器にMeCabを指定しています。Mecabのインストールについては、[[こちら>インストール/MeCabのインストール]]をご覧ください。
 $ tar zxf stmd-x.x.x.tar.gz
 $ cd stmd-x.x.x
 $ ./configure --with-icu-config=/usr/bin/icu-config \
               --with-defaultstemmer=MECAB \
               --enable-mecab=yes \
               --enable-kill3number=yes \
               --with-mecab-config=/usr/local/bin/mecab-config
 $ make
 $ make install

Ubuntu-Server 12.04 でコンパイル時のリンクエラー
--Ubuntu-Server 12.04 でコンパイル時のリンクエラー
 Makefile中の -lystem の位置を変える
 Makefile:120行付近
  stmd: $(STMDOBJ) libystem.a
  --      $(LINK) -o $@ $(STMDOBJ) -L. $(LDFLAGS) -lystem $(SLIBS) -lexpat $(LIBS)
  ++      $(LINK) -o $@ $(STMDOBJ) -L. -lystem $(LDFLAGS) $(SLIBS) -lexpat $(LIBS)

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

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
 $ ./configure --with-icu-config=/usr/bin/icu-config \
               --with-expatdir=/usr \
               --prefix=/data/lib/geta \
               --enable-allowerror=yes \
               --enable-lp64=yes  # 64bit OSの場合
 $ make
 $ sudo make install

/etc/apache2/site-available/default に以下を追加
--enable-shared=yesでのコンパイル時、次のようなgetassocのリンクエラーが出たら
 libnwam.so: undefined reference to `utf8_appendCharSafeBody_48'
 libnwam.so: undefined reference to `utf8_nextCharSafeBody_48'

--Makefile.inを修正し、./configureからやり直す
 Makefile.in: 260
 --         $(CC) -o $@ @ALLSRC@ $(SHLDFLAG)
 ++         $(CC) -o $@ @ALLSRC@ $(SHLDFLAG) @EVAL_BEGIN@@ICUCONFIG@ --ldflags@EVAL_END@

make install後、/etc/apache2/site-available/default に以下を追加
 ScriptAlias /getassoc/ /data/lib/geta/wbin/getassoc/

TOP