Windows 64bit で、mecab-python
Windows 64bitで、mecab-python
準備するもの
- python 2.7.10 Windows x86-64 MSI installer
- Microsoft Visual Studio Community 2015
- 7-Zip 9.20 (2010-11-18) for Windows 64bit x64
- MeCab 本体 Binary package for MS-Windows : mecab-0.996.exe
- MeCab 本体 Source : mecab-0.996.tar.gz
- Mecab pythonバインディング mecab-python-0.996.tar.gz
Python 2.7.10
Python 本体です。
インストール先:C:\Python27
環境変数 Pathに、以下を追加します。
C:\Python27\;C:\Python27\Scripts;
Microsoft Visual Studio Community 2015
Mecab 本体のビルドに使います。
インストール先:C:\Program Files (x86)\Microsoft Visual Studio 14.0
インストール時カスタムを選択し、機能の選択で以下を追加します。
プログラミング言語
Visual C++
Python Tools for Visual Studio
「Unable to find vcvarsall.bat」の対処として環境変数を追加します。
変数:VS90COMNTOOLS
値:%VS140COMNTOOLS%
7zip
Mecab本体 Source の展開に使います。
インストール先:C:\Program Files\7-Zip
Mecab本体 Binary package for MS-Windows
Mecab Source には、辞書が入っていません。Mecab本体 Binaryに含まれる辞書を使うため、インストールします。
インストール先:C:\Mecab
pythonからmecabを動作させるため、環境変数の追加設定をします。
環境変数 Pathに、以下を追加します。
C:\Mecab\bin
mecabrcファイルの格納先を環境変数に設定します。
変数:MECABRC
値:C:\MeCab\etc\mecabrc
MeCab 本体 Source パッチ
mecab-0.996.tar.gz を展開し、srcにパッチをあてます。
1.mecab-0.996\src\Makefile.msvc.in 6行目
変更前:LDFLAGS = /nologo /OPT:REF /OPT:ICF /LTCG /NXCOMPAT /DYNAMICBASE /MACHINE:X86 ADVAPI32.LIB
変更後:LDFLAGS = /nologo /OPT:REF /OPT:ICF /LTCG /NXCOMPAT /DYNAMICBASE /MACHINE:X64 ADVAPI32.LIB
2.mecab-0.996\src\Makefile.msvc.in 8行目
変更前: -DDLL_EXPORT -DHAVE_GETENV -DHAVE_WINDOWS_H-DDIC_VERSION=@DIC_VERSION \
変更後: -DDLL_EXPORT -DHAVE_GETENV -DHAVE_WINDOWS_H -DDIC_VERSION=102 \
3.mecab-0.996\src\Makefile.msvc.in 9行目
変更前: -DVERSION="\"@VERSION@\"" -DPACKAGE="\"mecab\"" \
変更後: -DVERSION="\"0.996\"" -DPACKAGE="\"mecab\"" \
4.mecab-0.996\src\Makefile.msvc.in 11行目
変更前: -DMECAB_DEFAULT_RC="\"c:\\Program Files\\mecab\\etc\\mecabrc\""
変更後: -DMECAB_DEFAULT_RC="\"c:\\mecab\\etc\\mecabrc\""
5.mecab-0.996\ src\feature_index.cpp 356行目
変更前: case 't': os_ << (size_t)path->rnode->char_type; break;
変更後: case 't': os_ << (unsigned int)path->rnode->char_type; break;
6.mecab-0.996\ src\writer.cpp 260行目
変更前: case 'L': *os << lattice->size(); break;
変更後: case 'L': *os << (unsigned int)lattice->size(); break;
MeCab 本体 Source ビルド
ビルドします。mecab-0.996\srcフォルダで以下を実行します。
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64
nmake -f Makefile.msvc.in
MeCab 本体 をコピー
mecab-0.996\src内の以下ファイルをC:\Mecab\binフォルダに上書きコピーします。
libmecab.dll
mecab.exe
mecab-cost-train.exe
mecab-dict-gen.exe
mecab-dict-index.exe
mecab-system-eval.exe
mecab-test-gen.exe
mecab-0.996\src内の以下ファイルをC:\Mecab\sdkフォルダに上書きコピーします。
mecab.h
libmecab.lib
Mecab pythonバインディング パッチ
mecab-python-0.996.tar.gzを展開し、mecab-python-0.996\setup.pyを以下のように変更します。
#!/usr/bin/env python
from distutils.core import setup,Extension,os
setup(name = "mecab-python",
version = "0.996",
py_modules=["MeCab"],
ext_modules = [
Extension("_MeCab",
["MeCab_wrap.cxx",],
include_dirs=[r"C:\MeCab\sdk"],
library_dirs=[r"C:\MeCab\sdk"],
libraries=["libmecab"])
])
Mecab pythonバインディング のセットアップ動作確認
ビルド、インストール、動作確認をします。mecab-python-0.996フォルダで以下を実行します。
python setup.py build
python setup.py install
python test.py
参考 :
https://github.com/buruzaemon/natto/wiki/64-Bit-Windows
http://blog.yujigraffiti.com/2013/12/mecab-python-0999windows-64bit.html
http://seesaawiki.jp/spz/d/Windows%A4%CBmecab-python%A4%F2%C6%B3%C6%FE
「パソコン・インターネット」カテゴリの記事
- Windows 64bit で、mecab-python(2015.03.08)
トラックバック
この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/90813/61246928
この記事へのトラックバック一覧です: Windows 64bit で、mecab-python:


コメント