6.26. Perl-5.10.0

Perl 将各种编程语言的最佳特性集于一身,是一种强大的编程语言。

预计编译时间: 2.5 SBU
所需磁盘空间: 178 MB 包括测试组件

6.26.1. Installation of Perl

为了运行测试套件,要先创建一个基本的 /etc/hosts 文件,好几个测试都需要它来解析 localhost 的名称:


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

下面的补丁能修补被程序开发者已经认定的弱点和其他问题:


patch -Np1 -i ../perl-5.10.0-consolidated-1.patch

这个版本的 Perl 现在编译 Compress::Raw::Zlib 模块。默认下 Perl 将用内部复制的 Zlib 的源代码作编译。使用下面的命令使得 Perl 能够使用在 LFS 系统上已经安装过的 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.26.2. Perl 的内容

安装的程序: a2p, c2ph, cpan, dprofpp, enc2xs, find2perl, h2ph, h2xs, instmodsh, libnetcfg, perl, perl5.10.0 (link to perl), perlbug, perlcc, perldoc, perlivp, piconv, pl2pm, pod2html, pod2latex, pod2man, pod2text, pod2usage, podchecker, podselect, prove, psed (link to s2p), pstruct (link to c2ph), s2p, splain, and xsubpp
安装的库: 有好几百个库,无法在这里全部列出

简要描述

a2p

把 awk 翻译成 Perl

c2ph

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

cpan

通过命令行与 Comprehensive Perl Archive Network(CPAN)相互作用

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,sedawksh 特性和能力于一体的强大的编程语言

perl5.10.0

perl 的硬连接

perlbug

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

perlcc

从 Perl 程序生成可执行文件

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 语言结构

s2p

sed 脚本翻译成 Perl 脚本

splain

强制 Perl 输出冗余警告信息

xsubpp

把 Perl XS 代码转换成 C 代码


Host by Alair