polyglotを仮想環境にインストールするのはかなりの手間がかかる。polyglot moduleのインストはpip install polyglot
で簡単に出来るが、モジュールをインポートすると
1 | from polyglot.text import Text |
icu moduleがないエラーが出た。このエラーは、sudo apt-get install libicu-dev
では解消されない。pyicuというmoduleをインストール必要があり、pip install pyicu
でインストールを試みるも、無情にもicu-configがないとエラーが出る。とりあえずpyicuをインストールする前に最新のicuをインストールしてみることにした。
最新版のicuをソースからインストールする。
1 2 3 4 5 6 | wget http://download.icu-project.org/files/icu4c/61.1/icu4c-61_1-src.tgz tar -xvzf icu4c-61_1-src.tgz cd icu/source ./configure --prefix=/usr CXX=clang++ CC=clang make make install |
次にpyicuをvirtualenvにインストールする。
1 2 3 4 | git clone https://github.com/ovalhub/pyicu.git cd pyicu CFLAGS=-I/usr/include LDFLAGS=-L/usr/lib/icu/ ~/.pyenv/versions/3.6.4/envs/py36/bin/python setup.py build CFLAGS=-I/usr/include LDFLAGS=-L/usr/lib/icu/ ~/.pyenv/versions/3.6.4/envs/py36/bin/python setup.py install |
これだけやってもまだ以下のようなエラーが吐き出される。
undefined symbol: _ZTIN6icu_5714LEFontInstanceE
このエラーを以下のようにやるしか解消できないようだ。
sudo apt install libicu55 python3-icu icu-devtools
rm -rf ~/.pyenv/versions/3.6.4/envs/py36/lib/python3.6/site-packages/PyICU-2.0.3-py3.6-linux-x86_64.egg/_icu.cpython-36m-x86_64-linux-gnu.so
ln -s /usr/lib/python3/dist-packages/_icu.cpython-35m-x86_64-linux-gnu.so ~/.pyenv/versions/3.6.4/envs/py36/lib/python3.6/site-packages/PyICU-2.0.3-py3.6-linux-x86_64.egg/_icu.cpython-36m-x86_64-linux-gnu.so
rm -rf ~/.pyenv/versions/3.6.4/envs/py36/lib/python3.6/site-packages/PyICU-2.0.3-py3.6-linux-x86_64.egg/_icu.cpython-36m-x86_64-linux-gnu.so
ln -s /usr/lib/python3/dist-packages/_icu.cpython-35m-x86_64-linux-gnu.so ~/.pyenv/versions/3.6.4/envs/py36/lib/python3.6/site-packages/PyICU-2.0.3-py3.6-linux-x86_64.egg/_icu.cpython-36m-x86_64-linux-gnu.so
これだけやってもまだ以下のようなエラーが吐き出された。
ModuleNotFoundError: No module named 'morfessor'
このエラーは、pip install morfessor
で簡単に解消された。
やっとpolyglotのインストールが完了した。一筋縄ではいかないのが辛いところだ。
1 2 3 4 5 | from polyglot.text import Text blob = """We will meet at eight o'clock on Thursday morning.""" text = Text(blob) for x in text.transliterate("ja"): print(x) |
ウェ
ウィル
メート
アト
ーイト
オクロック
オン
トハースダイ
モーニング
ウィル
メート
アト
ーイト
オクロック
オン
トハースダイ
モーニング
参考サイトhttps://github.com/
スポンサーリンク
スポンサーリンク