Simplate のWindows版バイナリビルド
PHPで利用するテンプレートエンジンを探していて
SimplateというSmarty互換のテンプレートエンジンを見つけました。
特徴は、とりあえず速い、ということです。
ベンチによると、Smartyと比べてだいぶ速く動作するみたいですね。
Smartyが機能テンコ盛りなのに対して、機能を削って速く軽くというのがコンセプトのようです。
また、C++で実装されており、PHP Extentionとして動作します。
ということでインストールしてみおう!
と思ったのですが・・・
公式ページの、Windows版dllファイル、リンク切れなんですよね!
情報無いかな〜〜〜と思っていたのですが、見つけることができませんでした。
Simplateのアーカイブには VC++で開くことができるプロジェクトファイルが入っています。
VCや、コンパイル周辺の知識はほとんど無いに近しい私ですが、
うーん、なんとかなるかなぁ、と思ってやってみたらなんとかなりました。
このメモを書く上で状況を整理してまとめてみたら、かなりシンプルな手順になりましたorz
これだったらわ、ざわざまとめなくても大丈夫だったかな〜
まず、PCに Microsoft VisualC++ 2008 ExpressEditionをインストールします。
無料で使えてウマウマですね。標準のインストールでいけると思います。(オプションあったかどうか忘れた・・・)
次にSimplateの最新ソースコードと、phpのソースコードを取得しておきます。
んで、ソースを展開、ここでは展開先を c:\dev\src\ にしておきますね。
展開のイメージですが
\dev
\src
\php-5.2.5
\simplate-0.4.0-RC1
\simplate-0.4.0
という具合で。
phpソースのフォルダの下に、simplateの解凍イメージを放り込んだ形ですね。
リンク段階で php5ts.lib が必要になります。
これ、phpを自前でビルドした場合はソースフォルダ内にあると思うんですが、
ソースコードを展開しただけの場合は、存在しません。
で、どっからとってくるかというと、phpのwin版バイナリに入ってます。
phpのインストールフォルダ内の \dev の中です。
ソレを \src\php-5.2.5\Release_TS\にコピーします。 Release_TSフォルダは作成してください。
それでは準備完了ですので、れっつビルド!
あ、VC++のツールバー内ドロップダウン [Debug] [Win32] を [Release] [Win32] に変更するのをお忘れなく。
変更できたら「ビルド」→「ソリューションのビルド」でOKです。
simplateのフォルダ内 releaseフォルダの中にビルドで生成されたファイルがあります。
あとは php_simplate.dll を phpのextension_dir にコピーして、
php.ini に extension = php_simplate.dll を追加、apache再起動すれば完了です。
phpinfo(); や php -i で simplateの項目が出ていれば成功ですね。
おつかれさまでした。
最近ようやっと EclipsePDTや XDebugを利用したリッチな開発環境に移行できました。
それまでは SakuraEditor で書いて、FFFTPでアップロードして、ページ開いて
エラーログや echo出力とにらめっこするような開発だったので、便利さを痛感しとります。
ただ、どばっと新しいことを取り入れたのでなかなか作業がすすまないorz