6.33. Perl-5.10.1

Perl パッケージは Perl 言語 (Practical Extraction and Report Language) を提供します。

概算ビルド時間: 5.5 SBU
必要ディスク容量: 171 MB テストスイート込み

6.33.1. Perl のインストール

Perl の設定ファイルが /etc/hosts ファイルを参照するので、まずはこのファイルを生成します。 このファイルはテストスイートを実行する際にも利用されます。

echo "127.0.0.1 localhost $(hostname)" > /etc/hosts

不正な utf-8 エンコーディングの文字があるとセグメンテーションフォールトを起こすため、これを修正します。

patch -Np1 -i ../perl-5.10.1-utf8-1.patch

ここでビルドするバージョンの Perl は Compress::Raw::Zlib モジュールをビルドします。 デフォルトではビルドの際に Zlib のソースを内部的にコピーします。 以下のコマンドは、既にインストールされている Zlib ライブラリを用いるようにします。

sed -i -e "s|BUILD_ZLIB\s*= True|BUILD_ZLIB = False|"           \
       -e "s|INCLUDE\s*= ./zlib-src|INCLUDE    = /usr/include|" \
       -e "s|LIB\s*= ./zlib-src|LIB        = /usr/lib|"         \
    ext/Compress-Raw-Zlib/config.in

Perl のビルド設定を完全に制御したい場合は 対話的な Configure スクリプトを用いて手作業により行います。 Perl がデフォルトで定める設定でも構わない場合は、以下のコマンドにより Perl をコンパイルするための準備をします。

sh Configure -des -Dprefix=/usr \
                  -Dvendorprefix=/usr           \
                  -Dman1dir=/usr/share/man/man1 \
                  -Dman3dir=/usr/share/man/man3 \
                  -Dpager="/usr/bin/less -isR"

configure オプションの意味:

-Dvendorprefix=/usr

このオプションは各種の perl モジュールをどこにインストールするかを指定します。

-Dpager="/usr/bin/less -isR"

このオプションは perldoc プログラムが less プログラムを呼び出す際のエラーを正します。

-Dman1dir=/usr/share/man/man1 -Dman3dir=/usr/share/man/man3

まだ Groff をインストールしていないので Configure スクリプトが Perl の man ページを必要としないと判断してしまいます。 このオプションを指定することによりその判断を正します。

パッケージをコンパイルします。

make

コンパイル結果をテストするには以下を実行します。(約 2.5 SBU)

make test

パッケージをインストールします。

make install

6.33.2. Perl の構成

インストールプログラム: a2p, c2ph, config_data, corelist, cpan, cpan2dist, cpanp, cpanp-run-perl, dprofpp, enc2xs, find2perl, h2ph, h2xs, instmodsh, libnetcfg, perl, perl5.10.1 (perl へのリンク), perlbug, perldoc, perlivp, piconv, pl2pm, pod2html, pod2latex, pod2man, pod2text, pod2usage, podchecker, podselect, prove, psed (s2p へのリンク), pstruct (c2ph へのリンク), ptar, ptardiff, s2p, shasum, splain, xsubpp
インストールライブラリ: ここでは列記できないほどの数多くのライブラリ

概略説明

a2p

awk スクリプトを Perl スクリプトに変換します。

c2ph

cc -g -S によって生成されるような C 言語構造体をダンプします。

config_data

Perl モジュールの設定を検索または変更します。

corelist

Module::CoreList に対するコマンドラインフロントエンド。

cpan

コマンドラインから CPAN (Comprehensive Perl Archive Network) との通信を行います。

cpan2dist

CPANPLUS の配布物生成ツール。

cpanp

CPANPLUS ランチャー。

cpanp-run-perl

Perl スクリプト。(説明要。)

dprofpp

Perl プロファイルデータを表示します。

enc2xs

Unicode キャラクターマッピングまたは Tcl エンコーディングファイルから、 Perl の Encode 拡張モジュールを構築します。

find2perl

find コマンドを Perl に変換します。

h2ph

C 言語のヘッダーファイル .h を Perl のヘッダーファイル .ph に変換します。

h2xs

C 言語のヘッダーファイル .h を Perl 拡張 (Perl extension) に変換します。

instmodsh

インストールされている Perl モジュールを調査するシェルスクリプト。 インストールされたモジュールから tarball を作ることもできます。

libnetcfg

libnet ライブラリの設定に利用します。

perl

C 言語、 sedawksh の持つ機能を寄せ集めて出来上がった言語。

perl5.10.1

perl へのハードリンク。

perlbug

Perl およびそのモジュールに関するバグ報告を生成して、電子メールを送信します。

perldoc

pod フォーマットのドキュメントを表示します。 pod フォーマットは Perl のインストールツリーあるいは Perl スクリプト内に埋め込まれています。

perlivp

Perl Installation Verification Procedure のこと。 Perl とライブラリが正しくインストールできているかを調べるものです。

piconv

キャラクターエンコーディングを変換する iconv の Perl バージョン。

pl2pm

Perl4 の .pl ファイルを Perl5 の .pm モジュールファイルへの変換を行うツール。

pod2html

pod フォーマットから HTML フォーマットに変換します。

pod2latex

pod フォーマットから LaTeX フォーマットへ変換します。

pod2man

pod データを *roff の入力ファイル形式に変換します。

pod2text

pod データをアスキーテキスト形式に変換します。

pod2usage

ファイル内に埋め込まれた pod ドキュメントから使用方法の記述部分を表示します。

podchecker

pod 形式の文書ファイルに対して文法をチェックします。

podselect

pod ドキュメントに対して指定したセクションを表示します。

prove

Test::Harness モジュールのテストを行うコマンドラインツール。

psed

ストリームエディタ sed の Perl バージョン。

pstruct

cc -g -S によって生成されるような C 言語構造体をダンプします。

ptar

Perl で書かれた tar 相当のプログラム。

ptardiff

アーカイブの抽出前後を比較する Perl プログラム。

s2p

sed スクリプトを Perl スクリプトに変換します。

shasum

SHA チェックサム値を表示またはチェックします。

splain

Perl スクリプトの警告エラーの診断結果を詳細 (verbose) に出力するために利用します。

xsubpp

Perl の XS コードを C 言語コードに変換します。