[mecab-users 192] Re: windows環境における、MecabPythonBaindingのインストール

Back to archive index

Shinta Nakayama shint****@edu*****
2006年 12月 7日 (木) 10:24:30 JST


電通大の中山です。

Windows環境でコンパイルすることができましたのでご報告します。

コンパイルできない原因は非常に簡単な事で、MeCab 0.92がMSVC8(VC++2005)でコンパイルされており、
Python2.5がMSVC7(VC++2006)でコンパイルされているため、両者のオブジェクトコードをリンクしようとしたときに、
コンパイルされたバージョンが違うため、リンクできなかったのが原因のようです。

MeCabの0.90はMSVC7でコンパイルされているため、リンクすることに成功し、python用のDLLを吐くことに成功しました。

他の方のために、以下にわたしが成功した方法を書いておきます。

-------------------------------------
WindowsXP Pro
Python 2.5
MeCab 0.90 (MeCab0.91でできるかは未確認)
MSVC7

以上をインストール済みの状態にしておく

mecab-python-0.90.tar.gzをダウンロードして、以下のページを参考にしてsetup.pyを書き換える
http://www.atransia.co.jp/home/fukamachi/Diary/2006/01/15/

この状態で setup.py install を実行すると MeCab_wrap.cxx がconstから非constへのコピーでビルドエラーが発生する。
MeCab_wrap.cxxのソースコードのエラー発生箇所をconst_castで潰す。その後改めてsetup.py 
install

コレで、pythonにMeCabが組み込まれる。
この状態でtest.pyを実行しようとすると、DLLが読み込まれないといわれるので、libmecab.dllをパスの通っている箇所に移動させる。

この手順でpythonからMeCabを使うことができるようになりました。
-------------------------------------

現在はMeCab0.92をMSVC7でコンパイル、また逆にPythonをMSVC8でコンパイルしようとして苦戦中。
どちらかでもいいですが、できた方いますか? 





mecab-users メーリングリストの案内
Back to archive index