読者です 読者をやめる 読者になる 読者になる

ArmadilloでPHPを使う方法

アットマークテクノ(Atmark Techno) A4200-U00Z

アットマークテクノ(Atmark Techno) A4200-U00Z

ターゲットボードはArmadillo420,開発環境はATDE4を想定.

標準でlighttpdが動いているのでCGIPHPを使う. 最初はバイナリパッケージをダウンロードして配置していたんだけど、プログラム容量が足りなくなってしまったので、自前でビルドすることにした。

まずダウンロード,展開し,パッチを当て、ビルドし、romfsに配置する.

build_php5-cgi_for_armadillo.sh

    cp cross-root/bin/php-cgi atmark-dist/romfs/usr/bin/php

次に,依存ライブラリをxaptで入れる.これら依存ライブラリはatmark-dist(ulinux)が自動でしてくれるので,自分で配置する必要はない.

    sudo xapt --arch armel --suite squeeze --mirror http://ftp.jp.debian.org/debian¥
      libbz2-1.0 libcomerr2 libdb4.8 libgssapi-krb5-2 libk5crypto3 libkrb5-3 libmagic1¥
      libonig2 libpcre3 libqdbm14 libxml2 mime-support php5-common tzdata ucf zlib1g

最後に,lighttpdの設定(コメントアウト)をし,/tmpに権限を与える.

    vi atmark-dist/vendors/AtmarkTechno/fogcontroller-product/etc/lighttpd.conf
      "mod_fastcgi",

      cgi.fix_pathinfo = 1 in the php.ini
      fastcgi.server = ( ".php" =>
                         ( "localhost" =>
                           (
                             "socket" => "/tmp/php-fastcgi.socket",
                             "bin-path" => "/usr/bin/php"
                           )
                         )
                       )
    echo "#!/bin/sh\nchmod 777 tmp\n" > atmark-dist/romfs/etc/rc.d/S69permittmp

今回は,テストのためにphpinfoを出力するだけのサンプルプログラムを置く.

    echo "<?\nphpinfo();\n?>" > atmark-dist/romfs/home/www-data

プログラムを書込み,動作を確認する.

    firefox http://192.168.0.3/test.php

f:id:miettal:20150616080500p:plain