Thriftのインストール
だいぶ今更ですが、はまったのでメモしときます。
環境は、CentOS 5.5 です。
インストール
まず、依存ライブラリをインストール
sudo yum install automake libtool flex bison pkgconfig gcc-c++ boost-devel libevent-devel zlib-devel python-devel ruby-devel
Thrift本体をインストール
tar xvzf thrift-0.5.0.tar.gz cd thrift-0.5.0 ./configure --prefix=/usr make sudo make install
ここで、make中に以下のようなphp系のエラーがでました。
/home/brfrn169/thrift-0.5.0/lib/php/src/ext/thrift_protocol/php_thrift_protocol.cpp: In function ‘void createObject(char*, zval*, int, zval*, zval*)’: /home/brfrn169/thrift-0.5.0/lib/php/src/ext/thrift_protocol/php_thrift_protocol.cpp:390: error: ‘zend_std_get_constructor’ was not declared in this scope
どうやら、php5.2系じゃないとエラーになるようです。
http://www.mail-archive.com/thrift-user@incubator.apache.org/msg01111.html
以下のサイトを参考にしてphp5.2系を入れたらエラーがでなくなりました。
http://kfactory.net/?p=833