phpのssh2関数群はpeclのssh2ライブラリをインストールしないと動かないが、使えるようにするまでが面倒だったのでメモ。
おおよその手順は、opensshとlibssh2を何らかの方法でインストール(yumで入れるなら-develも必要)して、peclのssh2をいれればいい。引っかかるのはたいてい最後のpeclのssh2で、あちこちのサイトに書いてあるようにpearコマンドでインストールしようとしても失敗する。ということでそこだけフォロー。
wget http://pecl.php.net/get/ssh2-0.10.tgz tar xvzf ssh2-0.10.tgz cd ssh2-0.10 phpize ./configure --with-ssh2
この後、出来たconfig.hの最下行に次の1行を追加する。
#define LIBSSH2_APINO 200412301450
後は、modules/ssh2.soを適当なところに突っ込んで、php.iniなりそれに類するところで、extensionとして読み込めばOK。要するにphpのAPIバージョンが違うから転けていたということなのだろう。
しかし、ssh2関数を使いたくてここまでやったはいいが、2005/11/01からアップデートされてなくてbetaが外れていないというのは、betaで安定しちゃったのかコミッタが飽きたのかどっちなのだろう。そしてPackage Bugsを見る限り、どうも後者のような気がしてならない。
よほど最低限の機能だけで挙動が読める(たとえばローカル間のみとか)環境以外では使わない方が良さそうな気もするのだけど、どんなものなのだろうか。おしえて偉い人!