Homebrew 環境で MeCab の Java バインディングを構築

  • 4
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

Homebrew で環境作った Mac OSX Yosemite に MeCab の Java バインディングを構築するのにいろいろやることあったのでメモ。

Homebrew と MeCab と Java をインストール


# Homebrew をいれる
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

# MeCab をいれる
brew install mecab mecab-ipadic

# Java をいれる
brew tap phinze/homebrew-cask
brew install brew-cask
brew tap caskroom/versions

brew cask install java
export JAVA_HOME=`/usr/libexec/java_home`

# Mac の sed 使いにくいから GNU sed いれる
brew install gnu-sed

MeCabのJavaバインディング構築


# MeCab ソースの取得
git clone --depth 1 https://github.com/taku910/mecab.git
cd mecab/mecab/java/

# Makefile の編集
gsed -i '6c\INCLUDE=${JAVA_HOME}/include/' Makefile
gsed -i '7c\INCLUDE2=${JAVA_HOME}/include/darwin/' Makefile
gsed -i '10c\LIBS=-arch x86_64 `mecab-config --libs`' Makefile
gsed -i '11c\INC=-arch x86_64 `mecab-config --cflags` -I$(INCLUDE) -I$(INCLUDE2)' Makefile
gsed -i '15c\\t$(CXX) -dynamiclib $(TARGET)_wrap.o -o lib$(TARGET).dylib $(LIBS)' Makefile

make

ここまでやって↓こんな感じになればOK

$ ls
Makefile       MeCab_wrap.cxx README         org            test.java
MeCab.jar      MeCab_wrap.o   libMeCab.dylib test.class

$ make test
env LD_LIBRARY_PATH=. java test
0.996
太郎  名詞,固有名詞,人名,名,*,*,太郎,タロウ,タロー
は 助詞,係助詞,*,*,*,*,は,ハ,ワ
二郎  名詞,固有名詞,人名,名,*,*,二郎,ジロウ,ジロー
に 助詞,格助詞,一般,*,*,*,に,ニ,ニ
この  連体詞,*,*,*,*,*,この,コノ,コノ
本 名詞,一般,*,*,*,*,本,ホン,ホン
を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
渡し  動詞,自立,*,*,五段・サ行,連用形,渡す,ワタシ,ワタシ
た 助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
。 記号,句点,*,*,*,*,。,。,。
EOS

...(省略)

参考