最近モバイルサイトのFlash化実現を目指していろいろ要素技術の調査をしている。
どうやらモバイルでのFlashサイトはFlashLite1.1を使うべきっぽいのだけれど、ある程度動的なサイトを作ろうとするとLoadVariables関数等でFlash内で外部ファイルを読み出すのはどうも難しい(呼び出す毎に読み込みが発生する+ボタンを押下するといったアクションが必須)
なので、結構手間はかかりそうだけれど、Flash自体を動的に作成することに挑戦することにした。
Flashを動的に出力する方法はいくつかある。
libswf、swfmill,mingなどなど。
google Trendでこの3つを比べてみたら、mingが多く使われているよう(というか他の2つがヒットしない)なので、mingを使ってみることにした。
今回はインストール履歴というかメモ。けっこうはまった。
まず、mingをインストールしてみる。
公式サイトからダウンロード⇒コンパイル⇒make⇒make install
0.4.0.rc1を入れてみる
wget http://downloads.sourceforge.net/ming/ming-0.4.0.rc1.tar.gz?modtime=1215287835&big_mirror=0 tar zxvf ming-0.4.0.rc1.tar.gz cd ming-0.4.0.rc1 ./configure
(ここで色々入れなさいと怒られたもののリスト↓)
sudo yum install -y bison-devel.i386 bison flex byacc freetype-devel.i386 giflib-devel.i386 make make install
php用のエクステンションも入れる
cd php_ext make make install
php.iniに以下を追記
extension=php_ming.so
これで、phpでmingが使えるっぽい。
試しにテストしてけど動かない。
phpに「--with-ming」を付けてmakeしなおしてみる。
./configure --with-ming
make
なぜかうまくmakeできなくて手詰まり
mingのパージョンを0.3.0に落として再トライ
wget http://downloads.sourceforge.net/ming/ming-0.3.0.tar.gz?modtime=1139997188&big_mirror=0 wget http://downloads.sourceforge.net/ming/ming-php-0.3.0.tar.gz?modtime=1139997253&big_mirror=0 wget http://www.awm.jp/~yoya/cache/auicon.freeownhost.com/pc/dev/ming/jpeg.c.diff
下の2つは、なぜか別ファイルになってるphp用エクステンションと
JPEG用がうまく出ないのを直すパッチ
この3つをそれぞれtarで解凍
まずJPEGがうまく出ないのを直すバッチをあてる。
mv jpeg.c.diff ming-0.3.0/src/blocks cd ming-0.3.0/src/blocks patch -b jpeg.c jpeg.c.diff
でming-0.3.0フォルダに戻って
./configure make make install cd php_ext/ make make install
ここまでやると--extension_dir(/usr/local/lib/php/extensions/の下あたり)
でphp_ming.soが出来てる。
あとは、php.iniに以下を追記
extension=php_ming.so
apacheを再起動してOK。
・・・かと思ったらうまく動かない。
PHPを再コンパイルしてなかった。
./configure --with-ming
make make install
ちなみにphpのバージョンは5.2.6
これでうまく動いた!
どうやらmingの0.4.0はphpでうまく動かないっぽいね。