トップ «前の日記(2008-12-31 [J]) 最新 次の日記(2009-01-11 [J])» 編集

『よだきがり』のたわごと

2007|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|07|08|09|10|
2011|03|04|
2012|10|12|
2013|04|

2009-01-04 [J] さくらインターネットにswfedが入ったよ。

_ あけましておめでとうございます。

特に年が明けたからと言ってコレというものはないんですけども…

結論入りました。証拠

一応、元のコードの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を入れるわけですね。

インストール方法を自分用のメモとして書いておきます。(全てターミナル上で行います)

_ 1.pearをインストール(こちらを参考にしました。)

各ユーザーのカレントディレクトリで

% 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のインストールは終了。

_ 2.php.iniを設定する。

もし、php.iniを設定していない場合はwwwかさくらインターネットのコントロールパネルからphp.iniに

extension_dir = /home/$USER/lib/php/

など、1で作ったディレクトリのライブラリ用pathを指定します。

_ 3.peclの確認。こちらを参考にしました。

% pecl

上記でヘルプが出てこない場合は

% pear config-show

で返ってくるこの一覧のbin_dir の↓を指定してpeclを使う。

PEAR executables directory bin_dir /usr/local/bin

_ 4.libpngをインストール

% 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

ここまでは問題ない。

_ 5.swfed0.14をインストール1(この時の最新版)

ディレクトリをユーザーカレントに戻って。

% 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コマンドが効かない。

_ 6.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ができない。

_ 7.makeできるようにする。

どうやらpng.cとpngconf.hの呼び出しができてないとのこと。

libpng-1.2.18にある上記のファイルをswfed-0.14/src/にコピーする。

% make

おおおおお、キター。

あとは、コンパイルしたsoファイルを

% cp modules/swfed.so $php extension dir

これで、大丈夫なはずです。

相変わらずLLのコーディングならまだ知らず、こーいう作業は滅多にやらないので苦手orz