6.33. Perl-5.10.1

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 模块。 默认, Perl会用Zlib资源的内部拷贝来编译。 为了Perl会使用安装到系统上的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 的自动配置(这是很明智的),就用下面的命令:

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

配置选项的含义:

-Dvendorprefix=/usr

该参数确保 perl 知道怎样告诉其他软件包它们的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 (link to perl), perlbug, perldoc, perlivp, piconv, pl2pm, pod2html, pod2latex, pod2man, pod2text, pod2usage, podchecker, podselect, prove, psed (link to s2p), pstruct (link to c2ph), ptar, ptardiff, s2p, shasum, splain, and xsubpp
安装的库:: Several hundred which cannot all be listed here

简要描述

a2p

把 awk 翻译成 Perl

c2ph

显示 cc -g -S 产生的 C 语言结构。

config_data

询问或改变Perl模块的配置

corelist

Module::CoreList 的命令行前端

cpan

从命令行与综合Perl档案网络 (CPAN) 交流

cpan2dist

CPANPLUS 发行者

cpanp

CPANPLUS 发射器

cpanp-run-perl

Perl 脚本 (需要说明)

dprofpp

显示Perl的profile数据

enc2xs

为 Encode 模块编译 Perl 扩展,用于 Unicode 字符映射或 Tcl 编码文件。

find2perl

find 命令翻译成 Perl

h2ph

将 .h 的C头文件转成 .ph 的perl头文件

h2xs

将 .h 的 C 头文件转成 perl 程序扩展

instmodsh

一个监测安装 Perl 模块的 Shell 脚本, 甚至可以从已安装模块中创建压缩包。

libnetcfg

可以用来配置 libnet

perl

综合了 C, sed, awk, sh 特性和能力于一体的强大的编程语言

perl5.10.1

perl 的硬连接

perlbug

生成关于 perl 和相关模块的 bug 报告,并且 mail 给他们。

perldoc

显示嵌于 perl 安装目录或者一个 perl 脚本的 .pod 格式的小文档。

perlivp

Perl 安装验证过程,可以用它来验证 Perl 及其库是否安装正常。

piconv

Perl 版本的字符编码转换程序,类似于 iconv

pl2pm

将 Perl4 样式的 .pl 库文件转化为 Perl5 样式的 .pm 库模块的工具

pod2html

将 pod 格式的文件转为 html 格式

pod2latex

将 pod 格式的文件转为 LaTeX 格式

pod2man

将 pod 数据转为格式化的 *roff 输入

pod2text

将 pod 数据转为格式化的 ASCII 文本

pod2usage

打印文件内嵌的 pod 文档的使用信息

podchecker

检查 pod 格式的文档的语法

podselect

有选择的打印 pod 文档内容到标准输出

prove

测试Test::Harness 模块的命名行工具

psed

是 Perl 版本的流式编辑器,类似于sed

pstruct

显示 cc -g -S 产生的 C 语言结构

ptar

用Perl语言写的类似 tar的程序

ptardiff

一个比较提取文档和未提取文档的Perl程序

s2p

sed 脚本翻译成Perl

shasum

打印或检查SHA 的验证和

splain

强制 Perl 输出冗余警告信息

xsubpp

把Perl XS代码转变为C 代码