6.42. Perl-5.20.2

Perl 软件包包含实用信息抽取与报告语言。

大概编译时间: 6.5 SBU
需要磁盘空间: 301 MB

6.42.1. 安装 Perl

首先创建其中一个 Perl 配置文件和可选测试套件引用的基本 /etc/hosts 文件:

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

该版本的 Perl 会编译 Compress::Raw::Zlib 和 Compress::Raw::BZip2 模块。Perl 默认会使用内部的源码用于构建。 用以下的命令使 Perl 使用系统中已安装的库:

export BUILD_ZLIB=False
export BUILD_BZIP2=0

为了能完全控制 Perl 的设置,你可以在下面的命令中移除 -des 选项并手动设置编译该软件包的方式。相应的,用下面完全相同的命令使 Perl 使用自动检测到的:

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

配置选项的含义:

-Dvendorprefix=/usr

这确保 perl 知道如何通知软件包它们应该在哪里安装它们的 perl 模块。

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

这确保使用 less 而不是 more

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

由于 Groff 还没有安装,Configure 会认为我们不希望为 Perl 安装 man 手册。用这些参数重写该决策。

-Duseshrplib

编译某些 perl 模块需要的共享 libperl。

编译软件包:

make

用以下命令测试结果(大概 2.5 SBU):

make -k test

安装软件包并清理:

make install
unset BUILD_ZLIB BUILD_BZIP2

6.42.2. Perl 软件包内容

安装的程序: a2p, c2ph, config_data, corelist, cpan, cpan2dist, cpanp, cpanp-run-perl, enc2xs, find2perl, h2ph, h2xs, instmodsh, json_pp, libnetcfg, perl, perl5.20.2 (链接到 perl), perlbug, perldoc, perlivp, perlthanks (链接到 perlbug), piconv, pl2pm, pod2html, pod2latex, pod2man, pod2text, pod2usage, podchecker, podselect, prove, psed (链接到 s2p), pstruct (链接到 c2ph), ptar, ptardiff, ptargrep, s2p, shasum, splain, xsubpp, 和 zipdetails
安装的库: 几百个,不能在这完整列出
安装目录: /usr/lib/perl5

简要介绍

a2p

转换 awk 到 Perl

c2ph

转储正如 cc -g -S 生成的 C 结构体

config_data

Perl 模块查询或更改配置

corelist

Module::CoreList 的命令行前端

cpan

用命令行与综合 Perl 归档网络(Comprehensive Perl Archive Network,CPAN)交互

cpan2dist

CPANPLUS 发行构建器

cpanp

CPANPLUS 启动器

cpanp-run-perl

用于启用输出进程每次写后清空输出缓冲的 Perl 脚本

enc2xs

从 Unicode 字符映射或 Tcl 编码文件为 Encode 模块编译 Perl 扩展

find2perl

转换 find 命令到 Perl

h2ph

转换 .h C 头文件为 .ph Perl 头文件

h2xs

转换 .h C 头文件为 Perl 扩展

instmodsh

用于检查安装的 Perl 模块的 shell 脚本,甚至能从一个安装的模块中创建 tar 包

json_pp

在特定输入输出格式之间转换数据

libnetcfg

可用于配置 libnet Perl 模块

perl

将 C,sed,awk 以及 sh 一些最好的特性结合到一个单一的强大语言

perl5.20.2

perl 的硬链接

perlbug

用于生成关于 Perl、或者一起发布的模块的 bug 报告,并用邮件通知

perldoc

用嵌入到 Perl 安装目录或 Perl 脚本中的 pod 格式显示文档

perlivp

Perl安装验证程序;能用于验证 Perl 和它的库是否正确安装

perlthanks

用于生成发送到 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 程序

ptargrep

用于对 tar 归档文件中的内容进行模式匹配的 Perl 程序

s2p

转换 sed 脚本到 Perl

shasum

打印或检查 SHA 校验码

splain

用于 Perl 中的强制冗长警告诊断

xsubpp

转换 Perl XS 代码为 C 代码

zipdetails

显示 Zip 文件内部结构的详细信息