0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

MeCabとCaboChaのPythonバインディングWindows10編

Posted at

1. はじめに

PCを更新すると、MeCabとCaboChaもインストールしなおし。
なかなか、うまくできない。
Qiitaはもちろん、Webを駆け回って、何とか解決した。

2. インストール手順

2.1. Windows 10

  • もちろん64ビット

2.2. 32ビットのPythonをインストール

  • ストアアプリのPythonもダメ

2.3. MeCabとCaboCha

  • 公式のインストーラからインストール
  • インストール先がデフォルトと違うと、Pythonバインディング方法が異なる
    Linuxはどこにインストールされているかわかるからいいのか
  • UTF8を呪文のように唱えながら

2.4. Visual Studio 2022でいいかぁ

ライセンス違反にならないように、好きなのをインストール

2.5. Pythonバインディング

2.5.1. MeCabとCaboChaがデフォルトのインストール先のとき

次でインストールできるはず

  • pip install mecab
  • pip install cabocha-python

ikegamiさん感謝です

2.5.2. MeCabとCaboChaはデフォルト以外にインストール c:\ 直下など

この場合はソースコードからインストール
さがしたらパッケージもあるかもしれないけど
ソースコードからインストールってWindowsユーザーからしてみるとかっこいい
で、たくさんの人が

  • include_dirs
  • library_dirs
  • libraries

をインストール環境に合わせたらOKとあるんだけど、どうもダメ。
Linuxユーザーさんかな。
dllのPathを通すとか、dllをsite-packageに置くとか説明があってもよくわからない。

ikegamiさんのコードはどうなっているの?
プロパティ data_files が設定してある。ここに dllの場所を設定すると、一緒にインストールされるみたい。
パッケージ登録している人はちゃんと設定してあるのに、web上では探せなかった。

次に、pip install と python setup.py installでは動きが違うのか、ソースコードを持ってきて、python setup.py install してもダメ。

そこで、ikegamiさんのソースコードをいただいてきて、setup.py を次に変更して、python setup.py install で完了。さらに、ikegamiさんのコードはいろいろ修正済みでそのまま使える。

再び感謝です。

setup.py(mecab)
from distutils.core import setup, Extension, os

current_ver ="0.996" # バージョンに合わせて変更
bin_dir = r"C:\Program Files (x86)\MeCab\bin"  # インストール環境に合わせて変更
include_dir = r"C:\Program Files (x86)\MeCab\sdk" # インストール環境に合わせて変更
libs_dir = include_dir
libmecab_dir = os.path.join(bin_dir, "libmecab.dll")


setup(name = "mecab",
    version = current_ver,
    py_modules=["MeCab"],
    ext_modules = [
        Extension("_MeCab",
            ["MeCab_wrap.cxx",],
            library_dirs=[libs_dir],
            libraries=["libmecab"]
            )
    ],
    data_files = [('', [libmecab_dir])]
)

setup.py(cabocha)
from distutils.core import setup, Extension, os

current_ver ="0.69" # バージョンに合わせて変更
bin_dir = r"C:\Program Files (x86)\CaboCha\bin"  # インストール環境に合わせて変更
include_dir = r"C:\Program Files (x86)\CaboCha\sdk" # インストール環境に合わせて変更
libs_dir = include_dir
libcabocha_dir = os.path.join(bin_dir, "libcabocha.dll")
libcrfpp_dir = os.path.join(bin_dir, "libcrfpp.dll")

setup(name = "cabocha-python",
    version = current_ver,
    py_modules=["CaboCha"],
    ext_modules = [
        Extension("_CaboCha",
            ["CaboCha_wrap.cxx",],
            include_dirs=[include_dir],
            library_dirs=[libs_dir],
            libraries=["libcabocha"]
            )
    ],
    data_files = [('', [libcabocha_dir, libcrfpp_dir])]
)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?