6.40. Perl-5.24.1

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

概算ビルド時間: 5.9 SBU
必要ディスク容量: 245 MB

6.40.1. Perl のインストール

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

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

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

export BUILD_ZLIB=False
export BUILD_BZIP2=0

Perl のビルド設定を完全に制御したい場合は、以下のコマンドから-desオプションを取り除くことで手作業により操作を進めます。 Perl が自動的に判別するデフォルト設定に従うので良いのであれば、以下のコマンドにより Perl をコンパイルするための準備をします。

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

configure オプションの意味:

-Dvendorprefix=/usr

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

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

このオプションは more プログラムでなく less プログラムが利用されるようにします。

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

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

-Duseshrplib

Perl モジュールの中で必要とされる共有ライブラリ libperl をビルドします。

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

make

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

make -k test
[注記]

注記

zlib を利用しているテストの中には失敗するものが出てきます。 これは同時配布される zlib ではなくシステムにインストール済の zlib を利用することが原因です。

パッケージはインストールしクリーンアップします。

make install
unset BUILD_ZLIB BUILD_BZIP2

6.40.2. Perl の構成

インストールプログラム: c2ph, corelist, cpan, enc2xs, encguess, h2ph, h2xs, instmodsh, json_pp, libnetcfg, perl, perl5.24.1 (perl へのハードリンク), perlbug, perldoc, perlivp, perlthanks (perlbug へのハードリンク), piconv, pl2pm, pod2html, pod2man, pod2text, pod2usage, podchecker, podselect, prove, pstruct (hard c2ph へのハードリンク), ptar, ptardiff, ptargrep, shasum, splain, xsubpp, zipdetails
インストールライブラリ: ここでは列記できないほどの数多くのライブラリ
インストールディレクトリ: /usr/lib/perl5

概略説明

c2ph

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

corelist

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

cpan

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

enc2xs

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

encguess

複数ファイルのエンコーディングを調査します。

h2ph

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

h2xs

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

instmodsh

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

json_pp

特定の入出力フォーマット間でデータを変換します。

libnetcfg

Perl モジュール libnet の設定に利用します。

perl

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

perl5.24.1

perl へのハードリンク。

perlbug

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

perldoc

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

perlivp

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

perlthanks

感謝のメッセージ (Thank you messages) を電子メールで Perl 開発者に送信します。

piconv

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

pl2pm

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

pod2html

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

pod2man

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

pod2text

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

pod2usage

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

podchecker

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

podselect

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

prove

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

pstruct

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

ptar

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

ptardiff

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

ptargrep

tar アーカイブ内のファイルに対してパターンマッチングを適用するための Perl プログラム。

shasum

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

splain

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

xsubpp

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

zipdetails

Zip ファイルの内部構造に関する情報を出力します。