EC2インスタンスを立て環境構築し、いざrailsを起動させようとしたところmecabでエラーになり、調べてもなかなか出てこなかったのでメモとして残しておきます。
Mecabのインストール
Mecab本体をインストールします。この時、ググると以下のようにすればインストールできるとあります。
$ wget http://mecab.googlecode.com/files/mecab-0.994.tar.gz
実際に行うとこのようなエラーになります。
$ wget http://mecab.googlecode.com/files/mecab-0.994.tar.gz
--2016-09-22 08:48:07-- http://mecab.googlecode.com/files/mecab-0.994.tar.gz
mecab.googlecode.com (mecab.googlecode.com) をDNSに問いあわせています... 64.233.187.82, 2404:6800:4008:c01::52
mecab.googlecode.com (mecab.googlecode.com)|64.233.187.82|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 404 Not Found
2016-09-22 08:48:08 エラー 404: Not Found。
どうやらこのURLはもう存在していないみたいです。ではどこからインストールするのか。インストールするにはこのURLにアクセスして行います。
http://taku910.github.io/mecab/#download
ただこのままだとlocalにファイルをダウンロードされてします。できることなら、インスタンス上でダウンロードしたいなと思いました。
なのでこのように対処しました。
1.上記URLにアクセスし、開発ツールを開く。
2.「ダウンロード」となっている箇所のhtmlを見てそこのurlを使用する
これで問題なくインストールに成功しました。コードは以下です。
wget -O mecab-0.996.tar.gz "https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7cENtOXlicTFaRUE"
tar zxvf mecab-0.996.tar.gz
cd mecab-0.996
./configure
make
ダウンロードする時に名前、ファイル形式を指定しないとちょっと意図通りにできなかったので変更をしています。今回だと最新がmecab-0.996だったのでこのようにしています。
辞書の登録
Mecabが使用する辞書を登録します。こちらも同様です。よくあるコマンドが以下です。
$ wget http://mecab.googlecode.com/files/mecab-ipadic-2.7.0-20070801.tar.gz
がこちらも例のごとくエラーになるのでこちらも同様に対処します。結果コードは以下です。
wget -O mecab-ipadic-2.7.0-20070801.tar.gz "https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7MWVlSDBCSXZMTXM"
tar zxvf mecab-ipadic-2.7.0-20070801.tar.gz
cd mecab-ipadic-2.7.0-20070801
./configure --with-charset=utf8
make
今回だと最新がmecab-ipadic-2.7.0-20070801だったのでこのようにしています。