En raison de diverses circonstances, il était nécessaire d'installer MeCab dans l'environnement Windows. J'ai réussi à le faire, mais comme vous pouvez le voir avec un peu de google, un OS autre que Windows est recommandé. Puisqu'il a été résolu en combinant plusieurs articles de référence + α, conservez un journal de travail.
--Télécharger depuis http://taku910.github.io/mecab/#download
--Copier Makefile.msvc.in ⇒ Renommer en Makefile.msvc ――La 5ème ligne
LDFLAGS = /nologo /OPT:REF /OPT:ICF /LTCG /NXCOMPAT /DYNAMICBASE /MACHINE:X64 ADVAPI32.LIB
--Lignes 7-8
-DDLL_EXPORT -DHAVE_GETENV -DHAVE_WINDOWS_H -DDIC_VERSION=102 \
-DVERSION="\"0.996\"" -DPACKAGE="\"mecab\"" \
--Ligne 356
case 't': os_ << (unsigned int)path->rnode->char_type; break;
--Ligne 260
case 'L': *os << (unsigned int)lattice->size(); break;
make.bat
-Remplacer tous les 〇〇.exe et libmecab.dll dans \ mecab-0.996 \ src en C: \ Program Files (x86) \ MeCab \ bin -Récrire tout 〇〇.lib dans \ mecab-0.996 \ src en C: \ Program Files (x86) \ MeCab \ sdk --Ajoutez C: \ Program Files (x86) \ MeCab \ bin à PATH
#!/usr/bin/env python
from distutils.core import setup,Extension,os
import string
def cmd1(str):
return os.popen(str).readlines()[0][:-1]
def cmd2(str):
return string.split (cmd1(str))
setup(name = "mecab-python",
version = cmd1("mecab-config --version"),
py_modules=["MeCab"],
ext_modules = [
Extension("_MeCab",
["MeCab_wrap.cxx",],
include_dirs=cmd2("mecab-config --inc-dir"),
library_dirs=cmd2("mecab-config --libs-only-L"),
libraries=cmd2("mecab-config --libs-only-l"))
])
--mecab.h se trouve dans C: \ Program Files (x86) \ MeCab \ sdk
/**
* Lattice class
*/
class MECAB_DLL_CLASS_EXTERN Lattice {
public:
virtual void set_result(const char *str) = 0; //Ajoutez cette ligne
/**
* Clear all internal lattice data.
*/
virtual void clear() = 0;
vcvarsall.bat
python setup.py build
python setup.py install
Enfin, l'importation MeCab fonctionne.
Recommended Posts