Enyim Memcachedに、複数のキャッシュを一気に取得する関数があったので使ってみたら、サポートされてませんっていうエラーがでた。
よくよく調べてみると、「append、prepend、gets、cas」の4つのコマンドは、バージョン1.2.4から追加されたみたいで、CentOS5のyumでインストールされる1.2.2では、getsが使えないもよう。
仕方ないので、ソースからインストールすることに。本家サイトからソースをダウンロードして、解凍後、configureするとエラーが出た。
checking for libevent directory... configure: error: libevent is required. You can get it from http://www.monkey.org/~provos/libevent/
If it's already installed, specify its path using --with-libevent=/dir/
libeventっていうライブラリがないと怒られてる。--with-libeventっていう引数でディレクトリ指定しても効果なし。yumでインストールしてあるはずなんだけどなあ・・・。試しにlibeventも最新版をソースから入れてみる。
tar zxvf libevent-1.4.4-stable.tar.gz
cd libevent-1.4.4-stable
./configure
make
make install
/usr/local/libにインストールされたようです。つづいて、memcached再挑戦。
tar zxvf memcached-1.2.5.tar.gz
cd memcached-1.2.5
./configure
make
make install
今度は無事に入りました。さて、/usr/local/binにmemcached本体があるので、早速起動してみたところ、なぜかまた、libeventが見つからないというエラーが出てます( ̄□  ̄||
memcached: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory
以下の環境変数が必要だったとか。
export LD_LIBRARY_PATH=/usr/local/lib/
これで無事、getsも使えるようになりました。
追記:
最後の環境変数は、/etc/ld.so.confに/usr/local/lib/を追加して、ldconfigで反映させるだけでよかったみたいです。