特に年が明けたからと言ってコレというものはないんですけども…
結論入りました。証拠
一応、元のコードの31行目のリダイレクト部分
header("Location: ./index.php?id=$id");
↑が既にhttpヘッダー吐いてるじゃんって言われるので、コメントアウトして取り敢えずリンク形式にしました。
echo '<a href="index.php?id='.$id.'">go</a>';
まず、pear/peclをインストールして使えるようにする。
次に、私がレンタルしてるサーバーはさくらインターネットさんのスタンダードなのでOSが「Free BSD」なわけです。
yuyaさんのreadme.txtにもありますし日記にも書かれているのですが画像をパースする為にzlibとlibpngを使ってるわけです。
で、BSDにはzlibは入っているんですがlibpngが入ってないので、まずは、libpngをインストールです。
その後、swfedを入れるわけですね。
インストール方法を自分用のメモとして書いておきます。(全てターミナル上で行います)
各ユーザーのカレントディレクトリで
% mkdir bin lib lib/php lib/php/data lib/php/tests lib/php/docs temp % wget -O go-pear.php http://pear.php.net/go-pear % php go-pear.php
あとは、ターミナルで返ってくるディレクトリを都度指定してpearのインストールは終了。
もし、php.iniを設定していない場合はwwwかさくらインターネットのコントロールパネルからphp.iniに
extension_dir = /home/$USER/lib/php/
など、1で作ったディレクトリのライブラリ用pathを指定します。
% pecl
上記でヘルプが出てこない場合は
% pear config-show
で返ってくるこの一覧のbin_dir の↓を指定してpeclを使う。
PEAR executables directory bin_dir /usr/local/bin
% wget http://oss.oetiker.ch/rrdtool/pub/libs/libpng-1.2.18.tar.gz % tar xzvf libpng-1.2.18.tar.gz % cd libpng-1.2.18 % ./configure --prefix=$PHPのextentionディレクトリ % make % make check % make install
ここまでは問題ない。
ディレクトリをユーザーカレントに戻って。
% wget http://sourceforge.jp/projects/swfed/downloads/33431/swfed-0.14.tar.gz % tar xzvf swfed-0.14.tar.gz % cd swfed-0.14/src/
ここまではいいんです。 ところがphpizeコマンドが効かない。
% autoconfまで入れてTABキーを押す。
すると数字が出てきます。
% setenv PHP_AUTOCONF autoconfXXX % setenv PHP_AUTOHEADER autoheaderXXX % setenv INCLUDES -I/usr/local/lib/php(phpのexetention場所) % setenv PATH /usr/local/php-5.2.6/bin:$PATH
までやったらやっとphpize
%phpize % ./configure --prefix=$PHPのextentionディレクトリ
次はmakeができない。
どうやらpng.cとpngconf.hの呼び出しができてないとのこと。
libpng-1.2.18にある上記のファイルをswfed-0.14/src/にコピーする。
% make
おおおおお、キター。
あとは、コンパイルしたsoファイルを
% cp modules/swfed.so $php extension dir
これで、大丈夫なはずです。
相変わらずLLのコーディングならまだ知らず、こーいう作業は滅多にやらないので苦手orz