Armadillo-420上でPerl5を動かしてみました。
1.ATDE5をダウンロード
開発環境ATDE5を以下からダウンロードします。
i386向け
http://armadillo.atmark-techno.com/files/downloads/atde/atde5-i386-20150727.tar.xz
amd64向け
http://armadillo.atmark-techno.com/files/downloads/atde/atde5-amd64-20150727.tar.xz
ATDE5のインストールや起動方法は以下を参照してください。
2.ソースコードをダウンロード
2.1 ATDE5上でソースコードをダウンロードします。
atmark@atde5:~$ wget http://armadillo.atmark-techno.com/files/downloads/armadillo-420/source/dist/atmark-dist-20150727.tar.gz atmark@atde5:~$ wget http://armadillo.atmark-techno.com/files/downloads/armadillo-420/source/kernel/linux-2.6.26-at25.tar.gz
2.2 ソースコードを展開します。
atmark@atde5:~$ tar zxf atmark-dist-20150727.tar.gz atmark@atde5:~$ tar zxf linux-2.6.26-at25.tar.gz atmark@atde5:~$ ln -s atmark-dist-20150727 atmark-dist atmark@atde5:~$ cd atmark-dist atmark@atde5:~/atmark-dist$ ln -s ../linux-2.6.26-at25 ./linux-2.6.x
3.Perl5ビルド準備
3.1 まず、ATDE5 に perlのビルドに必要な libbz2-dev をインストールします。
atmark@atde5:~$ sudo apt-get install libbz2-dev
3.2 atmark-dist/に移動します。
atmark@atde5:~$ cd ~/atmark-dist
3.3 perlの設定に関するパッチをダウンロードし、パッチを当てます。
ダウンロードURL: https://users.atmark-techno.com/system/files/blogs/atmark-dist-v20150618-add-perl-config.patch
atmark@atde5:~/atmark-dist$ patch -p1 < ../atmark-dist-v20150618-add-perl-config.patch patching file config/config.in Hunk #1 succeeded at 646 (offset 120 lines). Hunk #2 succeeded at 953 (offset 120 lines).
3.4 次に、Perlのソースをダウンロードし、古いものと差し替えます。
ダウンロードURL: https://users.atmark-techno.com/system/files/blogs/perl5.14.tar.gz
atmark@atde5:~/atmark-dist$ cd user atmark@atde5:~/atmark-dist/user$ mv perl perl-old atmark@atde5:~/atmark-dist/user$ tar zxf ../../perl5.14.tar.gz atmark@atde5:~/atmark-dist/user$ cd ..
3.5 make menuconfigを実行し、perlのチェックをONにします。
モジュール類を使う場合は、base modulesも併せてONにすることをお勧めします。
atmark@atde5:~/atmark-dist$ make menuconfig Miscellaneous Applications ---> [*] perl │ │ │ │ (5.14.2) Version │ │ │ │ [*] base modules (NEW)
3.6 makeします。
atmark@atde5:~/atmark-dist$ make
4 PerlをCGIとして使う場合
4.1 lighttpdの設定を変更します。
設定ファイル(lighttpd.conf)のあるフォルダに移動します
atmark@atde5:~/atmark-dist$ cd vendors/AtmarkTechno/Armadillo-420/etc
4.2 エディタでlighttpd.confを以下のように編集します。
atmark@atde5:~/atmark-dist/vendors/AtmarkTechno/Armadillo-420/etc$ vi lighttpd.conf
変更前:
#### CGI module cgi.assign = ( ".cgi" => "", ".sh" => "/bin/sh" )
変更後:
cgi.assign = ( ".cgi" => "", ".sh" => "/bin/sh", ".pl" => "/usr/bin/perl" )
4.3 カレントディレクトリをatmark-dist/に戻して、再びmakeします。
atmark@atde5:~/atmark-dist/vendors/AtmarkTechno/Armadillo-420/etc$ cd ../../../.. atmark@atde5:~/atmark-dist$ make
5 テストCGIを作ってみます。
テストCGIプログラムは以下です。 ファイル名は「test.pl」とします。
#!/usr/bin/perl print "<html><body>"; print "hello perl"; print "</body></html>";
5.1 CGIファイルを格納するディレクトリに移動します。
atmark@atde5:~/atmark-dist$ cd vendors/AtmarkTechno/Armadillo0420/home/www-data
5.2 エディタで上記のプログラムを作成します。
atmark@atde5:~/atmark-dist/vendors/AtmarkTechno/Armadillo-420/home/www-data$ vi test.pl
5.3 CGIプログラムの実行権限を変更します。
atmark@atde5:~/atmark-dist/vendors/AtmarkTechno/Armadillo-420/home/www-data$ chmod 755 test.pl
5.4 カレントディレクトリをatmark-dist/に戻して、makeします。
atmark@atde5:~/atmark-dist/vendors/AtmarkTechno/Armadillo-420/home/www-data$ cd ../../../../.. atmark@atde5:~/atmark-dist$ make
makeしたファイルをArmadillo-420に書き込んで起動後、 WWWブラウザからArmadillo-420のtest.plにアクセスすると hello perl と表示されます。