(追記)もう0.2.0がリリースされてるので微妙に違ってたりします。本家をみてね。
Jubatusは依存ライブラリが多く割とインストールに手間取りそうな予感がしますね。そこでDebian stableでのインストール手順をば参考に。まずは前準備。
$ sudo aptitude install pkg-config libmsgpack-dev libgoogle-glog-dev
aptで入るのはこれくらいですね。mecabはOptionalですが日本語いじるときは何かと便利です。
$ sudo aptitude install mecab-jumandic-utf8 libmecab-dev
mecabはすばらしいプロダクトですね!(謎)
次にpficommonです。これはBetter & smaller boostだと考えるとよいです。
$ cd /tmp $ git clone git://github.com/pfi/pficommon.git $ mv pficommon /usr/local/src $ cd /usr/local/src/pficommon $ ./waf configure $ ./waf $ sudo ./waf install
ポイントは、msgpackがちゃんと入った状態でpficommonをconfigureすること。Jubatusはpficommonのmsgpack-rpc実装を利用します。re2は自分で入れてください。はい不親切ですね。ux-trieなんかはOptionalだし簡単なので省略。
最後にZooKeeperですが、これが曲者。なんだかんだいって公式サイトから落とすことにはなるのですが、Clouderaさんのおかげで、本体はaptで入るようになっています。まずはClouderaからCDHをインストールします。
$ sudo dpkg -i Downloads/cdh3-repository_1.0_all.deb
これで証明書を入れて、apt-lineを書いて(ここには書きません)、
$ sudo aptitude install hadoop-zookeeper-server
これでローカルで動くZooKeeperがlocalhost:2181で立ち上がるはずです。
さてここまではZooKeeper本体のインストールです。JubatusはZooKeeperのCクライアントに依存しています。なので公式サイトからtarballを落としてきて解凍して、contrib/c/src みたいなところにして
$ ./configure
$ make
# make install
で入ります。これで/usr/local/include/c-client-src/zookeeper.hとかいう微妙な名前のヘッダファイルがインストールされます。勘弁してよ〜
ここまできてやっとJubatusをビルドできます。
$ wget https://github.com/downloads/jubatus/jubatus/jubatus-0.1.0.tar.bz2 $ bzip2 -d jubatus-0.1.0.tar.bz2 $ tar xf jubatus-0.1.0.tar $ cd jubatus-0.1.0 $ ./waf configure --enable-mecab $ ./waf $ ./waf --check #optional: テスト $ sudo ./waf install
ふう。
実はZooKeeperは入れなくてもビルドできます。
$ ./waf configure --enable-mecab --disable-zookeeper $ ./waf $ ./waf --check #optional: テスト $ sudo ./waf install
たしかこんな感じ。
ここまできたら、
$ jubaclassifier -n testhoge
これでプロセスが起動すると思います。さあLet's Hack!!!