VPS上のCentOS 6.3で、形態素解析エンジン「MeCab」をUTF-8で使いたい


……のですが、辞書等がEUC-JPになってしまいます。
VPSはGMO・さくらで試用期間。


【やったこと】

# ■libiconv入れ
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
./configure --prefix=/usr/local

■ iconv --version
■ /usr/local/bin/iconv --version
→iconv (GNU libiconv 1.14)

■/usr/bin/iconv --version
iconv (GNU libc) 2.12

■gcc/g++ -v
gcc version 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC)

>vi /etc/ld.so.conf.d/lib.conf
/usr/local/lib/
ldconfig

# ■MeCab+辞書入れ
wget http://mecab.googlecode.com/files/mecab-0.995.tar.gz
wget http://mecab.googlecode.com/files/mecab-ipadic-2.7.0-20070801.tar.gz
 本体
./configure --with-charset=utf-8 --enable-utf8-only LIBS=-liconv
 辞書
./configure --with-charset=utf-8

こんな感じでやっているのですが、
>echo "隣の客は良く柿食う客だ"| nkf -e | mecab | nkf -w
これで結果が正常に表示される辺り、辞書がどうもUTF-8ではなくEUC-JPになってるようです。
mecab -Dでは辞書情報がutf-8になっているのですが……

filename: /usr/local/lib/mecab/dic/ipadic/sys.dic
charset: utf-8

どうか知恵を貸していただけないでしょうか。よろしくお願い致します。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2013/02/18 20:26:05
id:proanagram

#iconvに問題があるなら辞書の文字を手動でUTF-8統一しちゃえ。

find -name '*.csv' | xargs nkf --overwrite -w

find -name '*.def' | xargs nkf --overwrite -w

vi dicrc

>config-charset = UTF-8

で再makeでmecab結果は辞書の文字コード通りUTF-8になり、想定通り=正常になります。

が、根本的な解決になっているのか疑問符…。

ベストアンサー

id:kaki_k No.1

回答回数1ベストアンサー獲得回数1

MeCab 0.995 は、

公式サイト
http://mecab.googlecode.com/svn/trunk/mecab/doc/index.html で、

2013-02-16 MeCab 0.996
configure script の不備によりこiconvへのリンクに失敗する問題を修正

となっていますが、まだ0.996 がアップされていないようです。

辞書のmakeで、
/usr/local/libexec/mecab/mecab-dict-index -d . -o . -f EUC-JP -t utf-8
が失敗している模様。

0.994 を落として、辞書をmakeし直すと文字化けも直ると思います。

id:proanagram

>2013-02-18 MeCab 0.996
・configure script の不備によりこiconvへのリンクに失敗する問題を修正
・ユーザ辞書用CSVファイルのコストと左/右文脈IDを付与し, 新たなCSVファイルを生成する機能の追加
・解析結果からLattice を作成する Lattice::set_result() メソッドを追加. 単体テスト時のスタブの作成等に利用可能

とのことですね。Ver特有?の不具合だったようで。有難うございます。

2013/02/18 20:25:57

その他の回答0件)

id:kaki_k No.1

回答回数1ベストアンサー獲得回数1ここでベストアンサー

MeCab 0.995 は、

公式サイト
http://mecab.googlecode.com/svn/trunk/mecab/doc/index.html で、

2013-02-16 MeCab 0.996
configure script の不備によりこiconvへのリンクに失敗する問題を修正

となっていますが、まだ0.996 がアップされていないようです。

辞書のmakeで、
/usr/local/libexec/mecab/mecab-dict-index -d . -o . -f EUC-JP -t utf-8
が失敗している模様。

0.994 を落として、辞書をmakeし直すと文字化けも直ると思います。

id:proanagram

>2013-02-18 MeCab 0.996
・configure script の不備によりこiconvへのリンクに失敗する問題を修正
・ユーザ辞書用CSVファイルのコストと左/右文脈IDを付与し, 新たなCSVファイルを生成する機能の追加
・解析結果からLattice を作成する Lattice::set_result() メソッドを追加. 単体テスト時のスタブの作成等に利用可能

とのことですね。Ver特有?の不具合だったようで。有難うございます。

2013/02/18 20:25:57

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません