Motivation
- 普段使っているmacOSのAnaconda環境のJupyter Notebook、PythonでMeCabを使いたい。
- いろいろ検索するとHomebrewというパッケージ管理システムを使うと簡単にインストールできるらしい。
- でもAnacondaを先にダウンロードして入れてしまった人はHomebrewをインストールできないらしい(こうなった)
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
dyld: Library not loaded: @rpath/libssl.1.0.0.dylib
Referenced from: /anaconda3/lib/libssh2.1.dylib
Reason: image not found
- Anacondaを一旦消してHomebrewをインストール、その上で pyenv からAnacondaをインストールすると両者共存できるらしい。(参照、しかし難しそうだ)
- bash_profileでAnacondaのPATHを削除することでインストール可能らしい(参照、でも元に戻せるのか、Anacondaがその後ちゃんと動くのか不安だ)
- ん、このやり方でやれば2分でできると書いている人がいる(参照)。これでやってみよう
##Environment
macOS Mojave 10.14.3
Anaconda3, Python3
##Steps
####Mecab本体をインストール
cd {git_repo_path}
git clone https://github.com/taku910/mecab.git
cd mecab/mecab
./configure --enable-utf8-only
make
make check
sudo make install
####Mecab ipadic をインストール
cd ../mecab-ipadic
./configure --with-charset=utf8
make
sudo make install
####Mecab Python bindingのインストール
これが簡単にはいかなかった。
インストラクション通りにsudo pip install mecab-python3
とするとエラーが出る。確かunable to execute 'swig': No such file or directory。いろいろ調べた結果、swigというやつがたりなくて、これもやっぱり普通はHomebrewで入れるらしいが、なんとかcondaから入れてみた。
conda install -c anaconda swig
もう一度sudo pip install mecab-python3
とするとエラーが出る。今度はerror: command 'gcc' failed with exit status 1
。これも調べた結果、XCodeの最新版のバグで少し前の9.4を入れると解消されるというのでその通りにする。
- https://developer.apple.com/download/more/から "Command Line Tool (MacOS 10.13) for XCode9.4"をダウンロードしてインストール。
3度目の正直、なんだかわからないけどAnacondaの人はJupyter notebookから実行した方がいいとの噂を聞いて、新しいNotebookを作って
!pip install mecab-python3
これで無事にJupyterのPythonでMecabが使えるようになった。
python
import sys
import MeCab
mecab = MeCab.Tagger()
mecab.parse("今日驚きの努力だ")
今日 名詞,副詞可能,*,*,*,*,今日,キョウ,キョー
は 助詞,係助詞,*,*,*,*,は,ハ,ワ
晴れ 名詞,一般,*,*,*,*,晴れ,ハレ,ハレ
EOS
Conclusion
あとで聞いたところ、私のやり方は全くおかしいということがよくわかった。そもそも参考にしたページをよく見たらUbuntuのインストラクションだった。Mac OSを使っているならHomebrewがないとまずおかしいとの見解らしい。そしてAnacondaを素直にダウンロードしてインストーラーを使ってインストールしたのも間違いという説(AnacondaのページではDownloadボタンに誘導されるのにだ!)。正しくはおそらく、
- bash_profileを一時的に書き換えてAnacondaへのPATHを消し、Homebrewをインストールする(実際に次の日に夫がこの方法でさっくりHomebrewをインストールしてくれた)
- Anacondaを一度きっぱりきれいにアンインストールして、Homebrewを入れてそこからAnacondaをインストールする。
のどちらかだったのだろうと思う。ただいろいろやってみたので勉強になりました。それにMeCabも使えるようになったし。