前回RalinkのSDKを使ってカスタムファームを導入してみた。
今回はいろいろなアプリケーションをインストールしてみようと思う。
その前に、毎回ファームを書き換えるのはめんどくさいので、NFSを使えるようにする
[Linux
Kernel Configuration]→[Networking]→[Networking options
--->]
→[]IP:Kernel level autoconfiguration
[Linux
Kernel Configuration]→[File systems]→[Network File Systems --->]
Provide
NFSv3とかチェック
[BusyBox
Configuration]→[Linux System Utilities]
[]
Support mounting NFS file systems
これで、
mount
-o nolock 10.10.10.3:/var/lib/tftpboot /mnt
とすれば、/mntに無限の可能性が広がるはず!
つぎに、webからGPIO制御したいなーという願望を持ちつつ、
SDKに付属のGOAHEADをさわろうとして、よくわからなくて。。。
Lighttpdをインストールしてみたいと思う。
1.ファームの再構築
pollってのが必要みたい
[Linux
Kernel Configuration]→[General setup]→[Configure standard kernel
feature]→[]Enable eventpoll supportにチェックを入れる
2.Lighttpdのクロスコンパイル
本体はここから取得。以下のようにしてクロスコンパイルを行う。
PATH="$PATH":/opt/buildroot-gcc342/bin
./configure
--host=mipsel-linux CC=/opt/buildroot-gcc342/bin/mipsel-linux-gcc
CFLAGS="-I/home/adeno/fongpio/sdk3301/RT288x_SDK/source/linux-2.6.21.x/include"
LDFLAGS="-L/home/adeno/fongpio/sdk3301/RT288x_SDK/source/linux-2.6.21.x/lib"
--without-pcre --without-zlib --without-bzip2 –disable-ipv6
–prefix=/home/adeno/lighttpd
make
make
install
without系のオプションは、configureやmakeしたときにエラーになったものを除くため
(あとで、1つづつ検証していこう)
その結果できたものを
NFSのディレクトリに保存しておく
lighttpd
・lib
・sbin
・share
3.FON側からマウント
mount
-o nolock 10.10.10.3:/var/lib/tftpboot/ /mnt
そして、
mkdir
/usr/local
mkdir
/usr/local/lib
mount
-o nolock 10.10.10.3:/var/lib/tftpboot/lighttpd/lib /usr/local/lib
4.設定ファイルの準備
NFSディレクトリに以下を作成
・data/www/htdocs コンテンツ保存先
・data/www/log ログ保存先
lighttpd.confの作成
以下を参考に
server.event-handler
= "linux-sysepoll" をコメントアウトして
server.event-handler
= "poll" を追加する
あとは適当に・・・やって、/mnt/lighttpd.confに保存。
5.Lighttpd起動!
/mnt/lighttpd/sbin/lightpd
-D -f /mnt/lighttpd.conf
これで、10.10.10.254:4080にアクセスすると
やったー!
次はこの環境の永続化を考えよう。
0 件のコメント:
コメントを投稿