2010年1月25日月曜日

NetBSD/hpcmipsでPHP

モバイルギアIIにインストールしたNetBSD/hpcmips、Apacheが1.3系も2.x系も動作しなくて悩んでいたんだけど、Webサーバーとデータの送受信をするだけならPHPが動作するだけで十分なんで、Webサーバー化は中断してPHPの実行環境を構築してます。

ftp://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD-4.0/hpcmips/All

ここからバイナリパッケージをダウンロードしても良いんだけど、どれをインストールするのか良くわからなかったり、バイナリパッケージがなかったりするので、

ftp://ftp.netbsd.org/pub/pkgsrc/pkgsrc-2009Q3/

ここからアーカイブをダウンロードして展開して(それだけでスゴーく時間がかかる^^;)、
# cd lang/php5/
 とか、
# cd lang/pear/
 とかして、
# make package
しました。
※ make install で良いんだけど、バイナリパッケージも作っておきたいので。

で、Webサイトとのデータ送受信をするので、pearのHTTP_Request2なんかを要求されるので、
# pear install HTTP_Request2
 その他、Services_ShortURLもインストール。

 twitterにメッセージを投稿するのにServices_Twitterなんてのもあるんですねー。

 今回はベースになるスクリプトが自作じゃないので使わないけれど、覚えておこう。

で、一通り環境が出来たので、PHPのスクリプトを実行してみたら、なにやらエラーが・・・?

 さくらのレンタルサーバー上では問題なく動くスクリプトなのでなんでかなと思って、エラーメッセージを読んだら、cURLというライブラリが足りないらしい。

 これは、pearじゃなくて、NetBSDのpkgsrcから
# cd www/curl/
# make package
とやってインストール

・・・したけど、curl extensionが使えないorz
# pear install Net_Curl
でもダメorz

うーん、なんでだ?

 ついでにmbstringも使えないと思ったら、コンパイル時のオプションで指定しないとダメらしい。
こっちは、Makefile.phpに
PKG_DEFAULT_OPTIONS+= mbstring
と追記して再度コンパイルしたら解決。

 でもって、コンパイル中にメモリ不足でエラーにになったので、こっちは
# dd if=/dev/zero bs=1m count=256 of=/swapfile
# swapctl -a /swapfile
とやったら解決。
一時はdistccの分散コンパイルも考えたけれど、とりあえず時間がかかってもコンパイルできるならOK。
る必要があるんですね。

・・・なんだか年末からずっとコンパイルしているよorz

 それにしても、プアな環境で延々とコンパイルしていても固まらないモバイルギアIIは偉い(^ヮ^)
BSD Hacks ―プロが使うテクニック & ツール 100選
オライリージャパン
Dru Lavigne

ユーザレビュー:
中?上級者向け本書は ...
amazon.co.jpで買う
Amazonアソシエイト by ウェブリブログ商品ポータルで情報を見る



2足歩行ロボット
スピーシーズ株式会社

amazon.co.jpで買う
Amazonアソシエイト by ウェブリブログ商品ポータルで情報を見る



SPC-101C
スピーシーズ株式会社

amazon.co.jpで買う
Amazonアソシエイト by ウェブリブログ商品ポータルで情報を見る



0 件のコメント:

コメントを投稿