自然言語処理ライブラリサーバ環境構築（MeCab, NEologd, JDepP）

形態素解析器MeCabとその辞書のインストール方法、pythonバインディングのインストール方法、係り受け解析器jDepPのインストール方法を書き残します。

管理者権限がないことを考えてホームにインストールします。
基本的な方法は[これ](http://qiita.com/kouhara/items/26158cba4803d7137dca)を参考に。

## libtool
libtoolが必要なので先にインストールしておく

```
cd ~/src
$ curl -O ftp://ftp.gnu.org/gnu/libtool/libtool-2.4.2.tar.gz
$ tar zxvf libtool-2.4.2.tar.gz
$ rm libtool-2.4.2.tar.gz
$ cd libtool-2.4.2
$ ./configure --prefix=$HOME/local
$ make
$ make check # 処理が長い
$ make install
```

## MeCab
MeCabをインストールします

```
$ cd ~/src
$ git clone git@github.com:taku910/mecab.git
$ cd mecab/mecab
$ ./configure --prefix=$HOME/local --with-charset=utf8 --enable-utf8-only
$ make
```

> ここでエラーが出る場合。
> エラー: aclocal-1.10: couldn't open directory `m4': No such file or directory とか言われた。調べたらディレクトリを作れば良いらしかった。
>
> ```
> $ mkdir m4
> ```
> 再度
>
> ```
> $ make # ここでエラーが出て再度やりなおす場合下のコマンドで設定を再度してくれるっぽい
> # $ autoreconf
> # $ ./configure --prefix=.............
> ```
> そして、エラーが出なかったら、以下の続き

```
$ make check
$ make install
```

## ipadic
MeCabで使うipadic辞書をインストールします。

```
$ wget https://sourceforge.net/projects/mecab/files/mecab-ipadic/2.7.0-20070801/mecab-ipadic-2.7.0-20070801.tar.gz/download -O mecab-ipadic-2.7.0-20070801.tar.gz
$ tar zxvf mecab-ipadic-2.7.0-20070801.tar.gz
$ rm mecab-ipadic-2.7.0-20070801.tar.gz
$ cd mecab-ipadic-2.7.0-20070801/
$ ./configure --prefix=$HOME/local --with-charset=utf8
$ make
$ make install
```

## NEologd
辞書[NEologd](https://github.com/neologd/mecab-ipadic-neologd)をインストールします。
固有名詞捉えたい時に便利ですよね。むしろ最近これしか使っていないです。
また今回は、研究用も考えて、固定のバージョンである[v0.0.5](https://github.com/neologd/mecab-ipadic-neologd/releases/tag/v0.0.5)のインストール方法を載せています。

```
$ cd ~/src
$ wget https://github.com/neologd/mecab-ipadic-neologd/archive/v0.0.5.tar.gz
$ tar zxvf v0.0.5.tar.gz
$ rm v0.0.5.tar.gz
$ cd mecab-ipadic-neologd-0.0.5
$ ./bin/install-mecab-ipadic-neologd -n # 一度失敗してbuild dirができる
```
公式では./bin/install-mecab-ipadic-neologd -nをしろと書いてあるが、sudo権限を要求され失敗します。
このコマンドを叩くと ~/src/mecab-ipadic-neologd-0.0.5 ディレクトリ以下にbuildディレクトリが生成されるので、これを使う。

```
$ cd build/mecab-xxx...xxx/
$ ./configure --prefix=$HOME/local
$ make
$ make install
```

ただし、この時、ipadicを上書きしている感じになっている。
だからといってipadicより先に入れるのはダメなよう（utf-8のipadicが入っていないと後で文字化けしたり面倒なことになる）。

よって、ipadicを上書きすることになる。
辞書の名前はNEologdに変更しておく。

```
$ mv $HOME/local/lib/mecab/dic/ipadic $HOME/local/lib/mecab/dic/mecab-ipadic-neologd-0.0.5 
```
ipadic辞書が欲しい場合はもう一度インストールする。

それぞれの辞書が正しく入っているか不安な人は、mecabで辞書指定して芸能人の名前など固有名詞入れてみてください。NEologdの辞書の方では正しく固有名詞と解析されていると思います。

## pythonバインディング
### python3系
```
$ pip install mecab-python3
```

### python2系
（googlecodeから取得している記事が多いですが、googlecodeは閉鎖してしまったのでこちらで）

```
$ cd ~/src/mecab
$ cd mecab/python
$ vi setup.py 
```

以下setup.pyを編集
編集前

```python:setup.py
def cmd2(str):
    return string.split (cmd1(str))
```
↓↓↓↓↓↓↓↓
編集後

```python:setup.py
def cmd2(str):
    return cmd1(str).split()
```

そしてインストール

```
$ python setup.py build
$ python setup.py install
```
テスト

```
$ python test.py
```

## JDepP
東京大学の吉永先生が作成した係り受け解析器です（[ホームページ](http://www.tkl.iis.u-tokyo.ac.jp/~ynaga/jdepp/)）。
驚異的な解析速度らしいですね（[参考](https://www.google.co.jp/search?q=jdepp&oq=jdepp&aqs=chrome..69i57j69i60j0l4.1020j0j1&sourceid=chrome&ie=UTF-8)）。

コンパイル時に指定した辞書じゃないと、結果が壊れてしまうので注意が必要です。

ダウンロード

```
$ cd ~/src
$ wget http://www.tkl.iis.u-tokyo.ac.jp/~ynaga/jdepp/jdepp-latest.tar.gz
$ tar zxvf jdepp-latest.tar.gz
```
NEologdを辞書にしたいなら

```
# mecab辞書へのパス
# ローカルにインストールしていれば
# $HOME/local/lib/mecab/dic
$ cd path/to/lib/mecab/dic
$ mv ipadic ipadic.orig
$ ln -s mecab-ipadic-neologd ipadic
```
インストール

```
$ cd ~/src/jdepp-YYYY-MM-DD
$ ./configure --with-mecab-dict=IPA --prefix=$HOME/local
$ make clean
$ make model
$ make install
```