MacOSX上へのthrift 0.9.1のインストールに難儀したのでメモしておきます。
PHP用のファイルが足りないことが原因だったので、PHPを使わない人は除外すれば起きないかと思います。
CPPでもエラーが起きましたが僕は使わないので見なかったことにします。
なお、ThriftはHomebrewにも上がっていました。brewで試して上手く行けばおめでとうございます。
さて、Thriftのソースはここからダウンロードできます。
wget https://dist.apache.org/repos/dist/release/thrift/0.9.1/thrift-0.9.1.tar.gz
tar zxf thrift-0.9.1.tar.gz
cd thrift-0.9.1
./configure
make && make install
本来ならこれでインストールできるはずです。
しかし、makeを叩いた段階で以下のエラーが出ました。
Making all in php
Making all in test
make[4]: Nothing to be done for `all'.
cd src/ext/thrift_protocol/
&& make
phpのテストでこけてる感じです。
ext/thrift_protocol
とあるので、thriftのextensionが無いのか?と想像できました。
thriftのソースの中を見てみたら
lib/php/src/ext/thrift_protocol/
があったので、これが該当しそうですね。
この中でphpizeを叩いてみましたが、config.m4が存在しないということでエラーになってしまいます。
このファイルが無いことでextensionのビルドがこけてたみたいですね。
ぐぐったところriken.jpのリポジトリから0.9.0を落としてきて使いまわす人もいましたが、既に0.9.0は消されててぐぬぬでした。
オフィシャルのdownloadページを見なおしたらgitリポジトリの情報が載っていたので見てみることにしました。
git clone https://git-wip-us.apache.org/repos/asf/thrift.git thrift
gitリポジトリの中にはconfig.m4がいてくれたので、それを使ってビルドし直したら無事にインストールできました。
config.w32はいたので、Windowsだったらビルドできるのかな?その辺はあまり詳しくないのでなんとも言えませんが。
Thriftはgolangにも対応してるようですね。
使ってみようかな