島村 優太郎
ml****@ryne*****
2006年 9月 10日 (日) 13:46:15 JST
島村です。
全てソースからのコンパイルですが、こちらでは、
FreeBSD 6.1 + MySQL 4.0.27 w/z Senna(N-Gram)
FreeBSD 6.0 + MySQL 4.0.27 w/z Senna(N-Gram)
FreeBSD 5.4 + MySQL 5.0.24 w/z Senna(Mecab)
FreeBSD 4.11 + MySQL 4.0.26 w/z Senna(N-Gram)
6.0 5.4 4.11の4つの環境で利用できています。
> ===> Patching for mysql-server-4.1.21
> ===> Applying FreeBSD patches for mysql-server-4.1.21
> Ignoring previously applied (or reversed) patch.
> 2 out of 2 hunks ignored--saving rejects to configure.rej
> => Patch patch-configure failed to apply cleanly.
> => Patch(es) patch-Docs::Makefile.in patch-Makefile.in applied
> cleanly.
一度自分でもportsのMySQLで実行してみましたが、小泉氏
のパッチが取り込まれて以来
Makefile/configureが変わってしまい、Sennaのパッチを当てると
portsで当てるパッチが当てられなくなってしまいます。
そのため、どうしてもportsでコンパイルを行いたい場合、
./files/以下にあるMakefile関係のパッチを手動でどうにかする
必要があると思います。
> 「/usr/ports/databases/mysql41-server/work/
> mysql-4.1.21」で
> ./configure \
> --with-charset=utf8 \
> --with-extra-charsets=ujis,sjis \
> --with-named-curses-libs=/lib/libncurses.so.5 \
> --with-senna
/*
もしportsの./configure引数を渡したいのであれば、
パッチを全て取り除いた後、makeでconfigureを通し、
コンパイルに入ったら Ctrl+C で中断し、./work/*src*/
config.logで確認すると良いと思います。
ちなみに、--with-named-curses-libs=/lib/libncurses.so.5は
どのFreeBSDでもつけなくてもOKみたいです。
*/
> すると、「configure: error: libmecab is required to enable
> Senna support」というエラーが発生。
// Mecabを利用しているFreeBSD 5.4では
// かなり古いバージョンのSennaのため、当てにはならなかった
のですが‥
一応、MecabのMakefileに
CONFIGURE_ARGS= --prefix=/usr --with-charset=sjis
を加えてみてはどうでしょう?
// sjisの所は利用環境に合わせて‥
また、Sennaのports/Makefileにも、
CONFIGURE_ARGS= --with-sennahome=${SENNA_HOME}
の所を
CONFIGURE_ARGS= --prefix=/usr --with-sennahome=${SENNA_HOME}
として、prefixを指定することが大事なようです。
これでできるかわかりませんが、試してみてはいかがでしょう?
長文失礼いたしました。
------------------☆
島村 優太郎
ml****@ryne*****
------------------☆