macOS Catalinaで「mecab-python3」が動作しないときの対処方法

macOS Catalina(10.15.7)でPythonの「mecab-python3」ライブラリが動作しないときの対処方法です。

環境

エラー情報

% python3 mecab-test.py

Traceback (most recent call last):
  File "/mecab-test.py", line 1, in <module>
    import MeCab
  File "/usr/local/lib/python3.11/site-packages/MeCab/__init__.py", line 10, in <module>
    from . import _MeCab
ImportError: dlopen(/usr/local/lib/python3.11/site-packages/MeCab/_MeCab.cpython-311-darwin.so, 2): Symbol not found: __ZNKSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE3strEv
  Referenced from: /usr/local/lib/python3.11/site-packages/MeCab/../mecab-python3.dylibs/libmecab.2.dylib (which was built for Mac OS X 12.0)
  Expected in: /usr/lib/libc++.1.dylib

原因

libmecab.2.dylib (which was built for Mac OS X 12.0)

とあり、Mac OS X 12.0より古いバージョンのOSでは動作しない模様。

対策

mecab-python3のバージョンをダウンするのが得策です。

これで、正常にPython3からmecabが使えるようになりました。