かなり嵌ったので備忘録。sennaをインストールする際、configureのオプションを指定しないと、デフォルトの文字コードはeuc-jpでconfigureをすることになる。mecabで文字コードをutf8に設定するならば、sennaもそれに合わせて文字コードをutf8に設定しなければならない。あとsennaのconfigure時に何箇所か問題が起こるところがある。
store.c: In function ‘sen_db_store_open’: store.c:1136: warning: ‘l’ may be used uninitialized in this function store.c: In function ‘sen_db_store_create’: store.c:1216: warning: ‘l’ may be used uninitialized in this function
と、
gcc -D_REENTRANT -I. -I.. -I/usr/local/include -fno-strict-aliasing -g -O2 -Wall -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat=2 -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wdeclaration-after-statement -Wbad-function-cast -Wcast-align -Wredundant-decls -Winline --param max-inline-insns-single=12000 --param large-function-growth=28000 --param inline-unit-growth=400 -I/usr/local/include -MT nfkc.lo -MD -MP -MF .deps/nfkc.Tpo -c nfkc.c -fPIC -DPIC -o .libs/nfkc.o
と、
gcc -D_REENTRANT -I. -I.. -I/usr/local/include -fno-strict-aliasing -g -O2 -Wall -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat=2 -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wdeclaration-after-statement -Wbad-function-cast -Wcast-align -Wredundant-decls -Winline --param max-inline-insns-single=12000 --param large-function-growth=28000 --param inline-unit-growth=400 -I/usr/local/include -MT scm.lo -MD -MP -MF .deps/scm.Tpo -c scm.c -fPIC -DPIC -o .libs/scm.o
これら3箇所でつまづく。最初のはしばらく待つと警告が表示される。よくわからないが警告なのでとりあえずほっておく。2番目はいつまでたってもコンパイルが終わらない。そこで、個別にその部分だけコンパイルして、再度makeをする。参考サイト。
( 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 )
最後3つ目はひたすら待つしかない。ただ、相当時間がかかる。マシンスペックが低い場合はハングアップしてmakeを完了することができない場合がある。その場合は、旧バージョンを試してみると成功することがある。0.9あたりのバージョンを試してみるとmakeすることができた。
あとはインストール作業の備忘録。
g++のインストール
cdn-project.net:/#apt-get install g++
libncurse5-devのインストール(mysqlのコンパイルに必要)
cdn-project.net:/#apt-get install libncurses5-dev cdn-project.net:/#ldconfig
mecab-0.97のインストール
cdn-project.net:/# cd /usr/local/src cdn-project.net:/usr/local/src# wget http://jaist.dl.sourceforge.net/sourceforge/mecab/mecab-0.97.tar.gz cdn-project.net:/usr/local/src# tar xvzf ./mecab-0.97.tar.gz cdn-project.net:/usr/local/src# cd ./mecab-0.97 cdn-project.net:/usr/local/src/mecab-0.97# ./configure --prefix=/usr/local --with-charset=utf8 cdn-project.net:/usr/local/src/mecab-0.97# make cdn-project.net:/usr/local/src/mecab-0.97# make install cdn-project.net:/usr/local/src/mecab-0.97# cd ../ cdn-project.net:/usr/local/src# ldconfig
Mecab-ipadic のインストール
cdn-project.net:/usr/local/src# wget http://nchc.dl.sourceforge.net/sourceforge/mecab/mecab-ipadic-2.7.0-20070801.tar.gz cdn-project.net:/usr/local/src# tar xvzf ./mecab-ipadic-2.7.0-20070801.tar.gz cdn-project.net:/usr/local/src# cd ./mecab-ipadic-2.7.0-20070801 cdn-project.net:/usr/local/src/mecab-ipadic-2.7.0-20070801# ./configure --prefix=/usr/local --with-charset=utf8 cdn-project.net:/usr/local/src/mecab-ipadic-2.7.0-20070801# make cdn-project.net:/usr/local/src/mecab-ipadic-2.7.0-20070801# make install cdn-project.net:/usr/local/src/mecab-ipadic-2.7.0-20070801# cd ../
Senna のインストール
cdn-project.net:/usr/local/src# wget http://osdn.dl.sourceforge.jp/senna/33763/senna-1.1.4.tar.gz cdn-project.net:/usr/local/src# tar xvzf ./senna-1.1.4.tar.gz cdn-project.net:/usr/local/src# cd ./senna-1.1.4 cdn-project.net:/usr/local/src/senna-1.1.4# ./configure --prefix=/usr/local --with-encoding=utf8 cdn-project.net:/usr/local/src/senna-1.1.4# make cdn-project.net:/usr/local/src/senna-1.1.4# make install cdn-project.net:/usr/local/src/senna-1.1.4# cd ../
Tritonn (MySQL) のインストール
ダウンロードサイト(ソースからビルド)
cdn-project.net:/usr/local/src# wget http://iij.dl.sourceforge.jp/tritonn/36449/tritonn-1.0.12-mysql-5.0.67.tar.gz cdn-project.net:/usr/local/src# tar xvzf ./tritonn-1.0.12-mysql-5.0.67.tar.gz cdn-project.net:/usr/local/src# cd ./tritonn-1.0.12-mysql-5.0.67 cdn-project.net:/usr/local/src/tritonn-1.0.12-mysql-5.0.67# ./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/data --libexecdir=/usr/local/mysql/bin --enable-thread-safe-client --enable-local-infile --enable-assembler --with-pic --with-fast-mutexes --with-zlib-dir=bundled --with-big-tables --with-yassl --with-readline --with-archive-storage-engine --with-blackhole-storage-engine --with-example-storage-engine --with-federated-storage-engine --with-charset=utf8 --with-extra-charsets=all --with-mysqld-user=mysql --with-senna --with-mecab cdn-project.net:/usr/local/src/tritonn-1.0.12-mysql-5.0.67# make cdn-project.net:/usr/local/src/tritonn-1.0.12-mysql-5.0.67# make install cdn-project.net:/usr/local/src/tritonn-1.0.12-mysql-5.0.67# cd ../