limitusus’s diary

主に技術のことを書きます

Rakudo Perl6をソースからビルドしてみた

Perl使いとしてはやはりPerl6のビルドくらいはやっておかないとということでやってみた。

環境

OS Ubuntu 8.10 Intrepid Ibex Server

Parrotのインストー

% svn co https://svn.parrot.org/parrot/trunk parrot
% cd parrot
% perl Configure.pl --prefix=/home/limit/local
% make
% make test
% make install

revは39563だった。

/home/limit/local/bin/の中にparrotやparrot_configがあることを確認

追記(2009/09/25):
2009/09/25時点での最新版では以下のPerl 6のConfigure.plで

%  perl Configure.pl --parrot-config=/home/limit/local/bin/parrot_config

Reading configuration information from /home/limit/local/bin/parrot_config ...
Verifying Parrot installation...

===SORRY!===
I'm missing some needed files from the Parrot installation:
    /home/limit/local/lib/parrot/1.6.0-devel/languages/nqp/nqp.pbc
    /home/limit/local/lib/parrot/1.6.0-devel/tools/build/ops2c.pl
    /home/limit/local/lib/parrot/1.6.0-devel/tools/build/pmc2c.pl
    /home/limit/local/src/parrot/1.6.0-devel
    /home/limit/local/src/parrot/1.6.0-devel/pmc
    /home/limit/local/include/parrot/1.6.0-devel/pmc
(Perhaps you need to use Parrot's "make install-dev" or
install the "parrot-devel" package for your system?)

というメッセージが出てしまった。
したがって、この時点で

% make install-dev

も叩いておくべきらしい。

Rakudo Perl 6の構築

自分でインストールしたParrotを使う方法がなぜかREADMEに書かれていなかったのでConfigure.plを解読。以下のように指定すればいい。

% git clone git://github.com/rakudo/rakudo.git
% cd rakudo
% perl Configure.pl --parrot-config=/home/limit/local/bin/parrot_config
% make
% ln -s `pwd`/perl6 ~/local/bin/
% cat > ~/hello.pl
"Hello World!".say
^D
% perl6 ~/hello.pl
Hello World!                 

~/local/bin/parrot_configを指定したんだけど~/svn/parrot/parrotを使っているらしい。

Rakudo Perl 6ではmake installにあたるものをまだ作ってないらしいのでsymlinkを張っておいた。