ブログ

Armadillo-420でPerl5を使う

at_mangetsu
2015年8月31日 10時20分

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章 Windows上にATDEを構築する

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 と表示されます。