glfs/archive/perl-modules.xml
2022-12-13 12:19:29 -06:00

3055 lines
124 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
<!-- Lasciate ogne speranza, voi ch'intrate
(Abandon all hope, ye who enter here). -->
%general-entities;
<!-- moved to general.ent
<!ENTITY perl_authors "https://www.cpan.org/authors">-->
<!ENTITY Archive-Zip-download-http "&perl_authors;/id/P/PH/PHRED/Archive-Zip-&Archive-Zip-version;.tar.gz">
<!ENTITY Archive-Zip-md5sum "0576016be1e676cacebc447e2463dc44">
<!ENTITY autovivification-download-http "&perl_authors;/id/V/VP/VPIT/autovivification-&autovivification-version;.tar.gz">
<!ENTITY autovivification-md5sum "8dec994e1e7d368e055f21a5777385a0">
<!ENTITY Business-ISBN-download-http "&perl_authors;/id/B/BD/BDFOY/Business-ISBN-&Business-ISBN-version;.tar.gz">
<!ENTITY Business-ISBN-md5sum "60b36c0a92cf51e9027ec3d9f38e7224">
<!ENTITY Business-ISMN-download-http "&perl_authors;/id/B/BD/BDFOY/Business-ISMN-&Business-ISMN-version;.tar.gz">
<!ENTITY Business-ISMN-md5sum "9d824f770a48ad2bf9cafb2eb2d3bde2">
<!ENTITY Business-ISSN-download-http "&perl_authors;/id/B/BD/BDFOY/Business-ISSN-&Business-ISSN-version;.tar.gz">
<!ENTITY Business-ISSN-md5sum "6720f5ff3a8e7cb4d84aa35c78d8536c">
<!ENTITY Class-Accessor-download-http "&perl_authors;/id/K/KA/KASEI/Class-Accessor-&Class-Accessor-version;.tar.gz">
<!ENTITY Class-Accessor-md5sum "1f1e5990f87cad7659b292fed7dc0407">
<!ENTITY Data-Compare-download-http "&perl_authors;/id/D/DC/DCANTRELL/Data-Compare-&Data-Compare-version;.tar.gz">
<!ENTITY Data-Compare-md5sum "6a397ab5833237f3ca05ed7277b19a7a">
<!ENTITY Data-Dump-download-http "&perl_authors;/id/G/GA/GAAS/Data-Dump-&Data-Dump-version;.tar.gz">
<!ENTITY Data-Dump-md5sum "762c111e525c82ff23d62c90821b26e9">
<!ENTITY Data-Uniqid-download-http "&perl_authors;/id/M/MW/MWX/Data-Uniqid-&Data-Uniqid-version;.tar.gz">
<!ENTITY Data-Uniqid-md5sum "6bab3b5da09fedfdf60ce2629a7367db">
<!ENTITY DateTime-Calendar-Julian-download-http "&perl_authors;/id/P/PI/PIJLL/DateTime-Calendar-Julian-&DateTime-Calendar-Julian-version;.tar.gz">
<!ENTITY DateTime-Calendar-Julian-md5sum "de688324eb33a27449ac2a5bfe1453a0">
<!ENTITY DateTime-Format-Builder-download-http "&perl_authors;/id/D/DR/DROLSKY/DateTime-Format-Builder-&DateTime-Format-Builder-version;.tar.gz">
<!ENTITY DateTime-Format-Builder-md5sum "21d950a9425c0173d6191697bf9dc4dc">
<!ENTITY Encode-EUCJPASCII-download-http "&perl_authors;/id/N/NE/NEZUMI/Encode-EUCJPASCII-&Encode-EUCJPASCII-version;.tar.gz">
<!ENTITY Encode-EUCJPASCII-md5sum "5daa65f55b7c2050bb0713d9e95f239d">
<!ENTITY Encode-HanExtra-download-http "&perl_authors;/id/A/AU/AUDREYT/Encode-HanExtra-&Encode-HanExtra-version;.tar.gz">
<!ENTITY Encode-HanExtra-md5sum "e1d3bc32c1c8ee304235a06fbcd5d5a4">
<!ENTITY Encode-JIS2K-download-http "&perl_authors;/id/D/DA/DANKOGAI/Encode-JIS2K-&Encode-JIS2K-version;.tar.gz">
<!ENTITY Encode-JIS2K-md5sum "60539471aa408a2b793cd45a6ce651db">
<!ENTITY Error-download-http "&perl_authors;/id/S/SH/SHLOMIF/Error-&Error-version;.tar.gz">
<!ENTITY Error-md5sum "0dcd94640f617df02b6d6c1e4e92018c">
<!-- <!ENTITY File-BaseDir-download-http "&perl_authors;/id/K/KI/KIMRYAN/File-BaseDir-&File-BaseDir-version;.tar.gz">
<!ENTITY File-BaseDir-md5sum "667a7faa144c0c9a22b4421ed395fe89"> -->
<!ENTITY File-Slurper-download-http "&perl_authors;/id/L/LE/LEONT/File-Slurper-&File-Slurper-version;.tar.gz">
<!ENTITY File-Slurper-md5sum "5742c63096392dfee50b8db314bcca18">
<!ENTITY File-Which-download-http "&perl_authors;/id/P/PL/PLICEASE/File-Which-&File-Which-version;.tar.gz">
<!ENTITY File-Which-md5sum "face60fafd220dc83fa581ef6f96d480">
<!ENTITY HTML-Parser-download-http "&perl_authors;/id/G/GA/GAAS/HTML-Parser-&HTML-Parser-version;.tar.gz">
<!ENTITY HTML-Parser-md5sum "eb7505e5f626913350df9dd4a03d54a8">
<!ENTITY HTTP-Daemon-download-http "&perl_authors;/id/G/GA/GAAS/HTTP-Daemon-&HTTP-Daemon-version;.tar.gz">
<!ENTITY HTTP-Daemon-md5sum "ed0ae02d25d7f1e89456d4d69732adc2">
<!ENTITY IO-Socket-SSL-download-http "&perl_authors;/id/S/SU/SULLR/IO-Socket-SSL-&IO-Socket-SSL-version;.tar.gz">
<!ENTITY IO-Socket-SSL-md5sum "97fa6cd64f15db60f810cd8ab02d57fc">
<!ENTITY IPC-Run3-download-http "&perl_authors;/id/R/RJ/RJBS/IPC-Run3-&IPC-Run3-version;.tar.gz">
<!ENTITY IPC-Run3-md5sum "5a8cec571c51a118b265cf6e24e55761">
<!ENTITY libwww-perl-download-http "&perl_authors;/id/E/ET/ETHER/libwww-perl-&LWP-version;.tar.gz">
<!ENTITY libwww-perl-md5sum "19cd0f55f61359c973caa9301ec405bd">
<!ENTITY Lingua-Translit-download-http "&perl_authors;/id/A/AL/ALINKE/Lingua-Translit-&Lingua-Translit-version;.tar.gz">
<!ENTITY Lingua-Translit-md5sum "090cecd52ff9c1f9d4b370ba653b9da1">
<!ENTITY List-AllUtils-download-http "&perl_authors;/id/D/DR/DROLSKY/List-AllUtils-&List-AllUtils-version;.tar.gz">
<!ENTITY List-AllUtils-md5sum "5d7f33d6b21aa461c12b002e20a2cbb6">
<!ENTITY List-MoreUtils-download-http "&perl_authors;/id/R/RE/REHSACK/List-MoreUtils-&List-MoreUtils-version;.tar.gz">
<!ENTITY List-MoreUtils-md5sum "493032a211cdff1fcf45f59ebd680407">
<!ENTITY Log-Log4perl-download-http "&perl_authors;/id/M/MS/MSCHILLI/Log-Log4perl-&Log-Log4perl-version;.tar.gz">
<!ENTITY Log-Log4perl-md5sum "8e96fb5e236c92445947eceb903326ba">
<!ENTITY LWP-Protocol-https-download-http "&perl_authors;/id/O/OA/OALDERS/LWP-Protocol-https-&LWP-Protocol-https-version;.tar.gz">
<!ENTITY LWP-Protocol-https-md5sum "b8943dfb7d187af63c36fc18ab15947d">
<!ENTITY Module-Build-download-http "&perl_authors;/id/L/LE/LEONT/Module-Build-&Module-Build-version;.tar.gz">
<!ENTITY Module-Build-md5sum "b74c2f6e84b60aad3a3defd30b6f0f4d">
<!ENTITY Net-DNS-download-http "&perl_authors;/id/N/NL/NLNETLABS/Net-DNS-&Net-DNS-version;.tar.gz">
<!ENTITY Net-DNS-md5sum "28fcbcbf4483a9f23f75be4b9e3e45c8">
<!ENTITY Parse-Yapp-download-http "&perl_authors;/id/W/WB/WBRASWELL/Parse-Yapp-&Parse-Yapp-version;.tar.gz">
<!ENTITY Parse-Yapp-md5sum "69584d5b0f0304bb2a23cffcd982c5de">
<!ENTITY PerlIO-utf8_strict-download-http "&perl_authors;/id/L/LE/LEONT/PerlIO-utf8_strict-&PerlIO-utf8_strict-version;.tar.gz">
<!ENTITY PerlIO-utf8_strict-md5sum "9e8fba7f15c612c4f2ed2f961bf1141b">
<!ENTITY Regexp-Common-download-http "&perl_authors;/id/A/AB/ABIGAIL/Regexp-Common-&Regexp-Common-version;.tar.gz">
<!ENTITY Regexp-Common-md5sum "b1bb40759b84154990f36a160160fb94">
<!ENTITY SGMLSpm-download-http "&perl_authors;/id/R/RA/RAAB/SGMLSpm-&SGMLSpm-version;.tar.gz">
<!ENTITY SGMLSpm-md5sum "746c74ae969992cedb1a2879b4168090">
<!ENTITY Sort-Key-download-http "&perl_authors;/id/S/SA/SALVA/Sort-Key-&Sort-Key-version;.tar.gz">
<!ENTITY Sort-Key-md5sum "a37ab0da0cfdc26e57b4c79e39f6d98f">
<!ENTITY Test-Command-download-http "&perl_authors;/id/D/DA/DANBOO/Test-Command-&Test-Command-version;.tar.gz">
<!ENTITY Test-Command-md5sum "9ab83c4695961dbe92cd86efe08f0634">
<!ENTITY Test-Differences-download-http "&perl_authors;/id/D/DC/DCANTRELL/Test-Differences-&Test-Differences-version;.tar.gz">
<!ENTITY Test-Differences-md5sum "ecfda620fe133e36a6e392d94ab8424d">
<!ENTITY Text-BibTeX-download-http "&perl_authors;/id/A/AM/AMBS/Text-BibTeX-&Text-BibTeX-version;.tar.gz">
<!ENTITY Text-BibTeX-md5sum "eff0352d6de29a8d4d61efcc7774186c">
<!ENTITY Text-CSV-download-http "&perl_authors;/id/I/IS/ISHIGAKI/Text-CSV-&Text-CSV-version;.tar.gz">
<!ENTITY Text-CSV-md5sum "06e9ff3c867fa5ba7f8793ae06ea73ac">
<!ENTITY Text-Roman-download-http "&perl_authors;/id/S/SY/SYP/Text-Roman-&Text-Roman-version;.tar.gz">
<!ENTITY Text-Roman-md5sum "1f6b09c0cc1f4425b565ff787a39fd83">
<!-- NB biber is updated frequently and tends to need the latest Unicode-Collate,
whereas stable perl releases lag behind. So, next time the shipped version is
adequate, just comment it, it will soon get reinstated as a dependency -->
<!ENTITY Unicode-Collate-download-http "&perl_authors;/id/S/SA/SADAHIRO/Unicode-Collate-&Unicode-Collate-version;.tar.gz">
<!ENTITY Unicode-Collate-md5sum "b077a891392c02fcc26d3c9f7dfc1734">
<!ENTITY Unicode-LineBreak-download-http "&perl_authors;/id/N/NE/NEZUMI/Unicode-LineBreak-&Unicode-LineBreak-version;.tar.gz">
<!ENTITY Unicode-LineBreak-md5sum "736dcb04f6a250bd28e4279f2b8592af">
<!ENTITY URI-download-http "&perl_authors;/id/E/ET/ETHER/URI-&URI-version;.tar.gz">
<!ENTITY URI-md5sum "892f7183b178af40f205ba37128225db">
<!ENTITY XML-LibXML-Simple-download-http "&perl_authors;/id/M/MA/MARKOV/XML-LibXML-Simple-&XML-LibXML-Simple-version;.tar.gz">
<!ENTITY XML-LibXML-Simple-md5sum "15b7cbe0887e292057fbcfcb3d87ef2e">
<!ENTITY XML-LibXSLT-download-http "&perl_authors;/id/S/SH/SHLOMIF/XML-LibXSLT-&XML-LibXSLT-version;.tar.gz">
<!ENTITY XML-LibXSLT-md5sum "700d493b72f99788d428cc9756bef165">
<!ENTITY XML-Simple-download-http "&perl_authors;/id/G/GR/GRANTM/XML-Simple-&XML-Simple-version;.tar.gz">
<!ENTITY XML-Simple-md5sum "bb841dce889a26c89a1c2739970e9fbc">
<!ENTITY XML-Writer-download-http "&perl_authors;/id/J/JO/JOSEPHW/XML-Writer-&XML-Writer-version;.tar.gz">
<!ENTITY XML-Writer-md5sum "b9c2420c243c6a36ce45a008740fcede">
]>
<!-- FIXME (I only used that so that this gets highlighted by vim ;-)
If you have the misfortune to have to add a new module which puts a program
into /usr/bin/, please document it at the end of the page. 'perldoc' is
sometimes a good place to start, then for scripts look at any comments in the
script, and if you get a package like Text::BibTeX with compiled progs and
library, look at the comments in the code
Also, for external modules where we do not show a version in the module name,
prefer to go to https://metacpan.org/, find the module and link to it.
Where a dependency is used by multiple other modules on this page, but not by
packages elsewhere in the book, promote it to a top-level entry so that it can
be linked - but do not give it a version. See Capture::Tiny for an example.
If you have to add a new module, working out which dependencies are part of the
core perl distribution can be error-prone : for an incomplete list see
general/prog/perl-core-modules.txt
and please update that it you find new deps which are part of the core.
-->
<sect1 id="perl-modules" xreflabel="Perl modules">
<?dbhtml filename="perl-modules.html" ?>
<title>Perl Modules</title>
<indexterm zone="perl-modules">
<primary sortas="a-Perl-modules">Perl modules</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Perl Modules</title>
<para>The <application>Perl</application> module packages add useful
objects to the <application>Perl</application> language. Modules utilized
by packages throughout BLFS are listed here, along with their dependencies.
Installation of the modules shown on this page should be accomplished by
installing the dependencies in the order listed. The Perl Module standard
build and installation instructions are shown at the bottom of this page.
</para>
<para>If a module is used by more than one other module on this page, but
not by other packages in the book, it is listed by name (without a version)
here at the top level to slightly reduce the complexity of the XML
source for this page.</para>
<para>Where a module is shown as '(for the test suite)' it is required if
you wish to run the test for the module which uses it.</para>
<para> In all cases, only
the required or recommended dependencies are listed - there might be other
modules which allow more tests to be run, but omitting them will still allow
the tests to <literal>PASS</literal>.</para>
<note>
<para>For unversioned modules on this page, if you are building without
using the CPAN automated install then the links on this page (to metacpan.org)
should go to "known good" versions, for which the dependencies are correct. If
you wish to use a later version, please check the Changes file at
https://metacpan.org - sometimes added dependencies are listed, other
times not. The BLFS editors only monitor such modules, and their
dependencies, irregularly. Some of these modules have very frequent
updates, often bringing different dependencies. The linked metacpan.org
versions below are known to build and work with BLFS-8.3</para>
<para>However, if you notice that the Changes file for a newer version
than is in the current development book reports a fix for a security issue,
please report this to either the blfs-dev or the blfs-support list.</para>
<para>Similarly, if you discover that an updated versioned module needs
an extra dependency, please report this.</para>
</note>
<!-- Archive::Zip -->
<bridgehead renderas="sect3" id="perl-archive-zip"
xreflabel="Archive::Zip-&Archive-Zip-version;">
Archive::Zip-&Archive-Zip-version;</bridgehead>
<indexterm zone="perl-modules perl-archive-zip">
<primary sortas="a-Archive-Zip">Archive::Zip</primary>
</indexterm>
<para>The Archive::Zip module allows a <application>Perl</application>
program to create, manipulate, read, and write Zip archive files. This
module uses the standard <xref linkend="perl-standard-install"/>.</para>
<!-- Archive-Zip -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Archive-Zip-download-http;">Archive::Zip-&Archive-Zip-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Archive-Zip-download-http;
MD5 sum: &Archive-Zip-md5sum;</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/G/GF/GFRANKS/Test-MockModule-0.15.tar.gz">Test::MockModule</ulink> - This uses the <xref linkend="perl-build-install"/>
(https://cpan.metacpan.org/authors/id/G/GF/GFRANKS/Test-MockModule-0.15.tar.gz) (for the test suite)</literallayout>
<itemizedlist>
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/C/CH/CHROMATIC/SUPER-1.20141117.tar.gz">SUPER</ulink>
(https://cpan.metacpan.org/authors/id/C/CH/CHROMATIC/SUPER-1.20141117.tar.gz) (for the test suite)</literallayout>
<itemizedlist>
<listitem>
<para>
<xref linkend="perl-sub-identify"/>
</para>
</listitem>
</itemizedlist> <!-- end of deps for SUPER -->
</listitem>
<listitem>
<para>
<xref linkend="perl-test-warnings"/>
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- autovivification -->
<bridgehead renderas="sect3" id="perl-autovivification"
xreflabel="autovivification-&autovivification-version;">
autovivification-&autovivification-version;</bridgehead>
<indexterm zone="perl-modules perl-autovivification">
<primary sortas="a-autovivification">autovivification</primary>
</indexterm>
<para>The autovivification module allows you to lexically disable
autovivification. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- autovivification -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&autovivification-download-http;">autovivification-&autovivification-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&autovivification-download-http;
MD5 sum: &autovivification-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- Business::ISBN -->
<bridgehead renderas="sect3" id="perl-business-isbn"
xreflabel="Business::ISBN-&Business-ISBN-version;">
Business::ISBN-&Business-ISBN-version;</bridgehead>
<indexterm zone="perl-modules perl-business-isbn">
<primary sortas="a-Business-ISBN">Business::ISBN</primary>
</indexterm>
<para>The Business::ISBN module is for work with International Standard Book
Numbers. This module and its dependencies use the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Business-ISBN -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Business-ISBN-download-http;">Business::ISBN-&Business-ISBN-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Business-ISBN-download-http;
MD5 sum: &Business-ISBN-md5sum;</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/B/BD/BDFOY/Business-ISBN-Data-20140910.003.tar.gz">Business::ISBN::Data</ulink>
(https://cpan.metacpan.org/authors/id/B/BD/BDFOY/Business-ISBN-Data-20140910.003.tar.gz)</literallayout>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Business::ISMN -->
<bridgehead renderas="sect3" id="perl-business-ismn"
xreflabel="Business::ISMN-&Business-ISMN-version;">
Business::ISMN-&Business-ISMN-version;</bridgehead>
<indexterm zone="perl-modules perl-business-ismn">
<primary sortas="a-Business-ISMN">Business::ISMN</primary>
</indexterm>
<para>The Business::ISMN module is for work with International Standard
Music Numbers. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Business-ISMN -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Business-ISMN-download-http;">Business::ISMN-&Business-ISMN-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Business-ISMN-download-http;
MD5 sum: &Business-ISMN-md5sum;</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/B/BD/BDFOY/Tie-Cycle-1.225.tar.gz">Tie::Cycle</ulink>
(https://cpan.metacpan.org/authors/id/B/BD/BDFOY/Tie-Cycle-1.225.tar.gz)</literallayout>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Business::ISSN -->
<bridgehead renderas="sect3" id="perl-business-issn"
xreflabel="Business::ISSN-&Business-ISSN-version;">
Business::ISSN-&Business-ISSN-version;</bridgehead>
<indexterm zone="perl-modules perl-business-issn">
<primary sortas="a-Business-ISSN">Business::ISSN</primary>
</indexterm>
<para>The Business::ISSN module is for work with International Standard
Serial Numbers. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Business-ISSN -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Business-ISSN-download-http;">Business::ISSN-&Business-ISSN-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Business-ISSN-download-http;
MD5 sum: &Business-ISSN-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- Capture::Tiny is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-capture-tiny"
xreflabel="Capture::Tiny">
Capture::Tiny</bridgehead>
<indexterm zone="perl-modules perl-capture-tiny">
<primary sortas="a-Capture-Tiny">Capture::Tiny</primary>
</indexterm>
<para>The Capture::Tiny module captures STDOUT and STDERR from Perl, XS
(eXternal Subroutine, i.e. written in C or C++) or external programs. This
module uses the standard <xref linkend="perl-standard-install"/>.</para>
<!-- Capture-Tiny -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Capture-Tiny-0.48.tar.gz">Capture::Tiny</ulink>
(https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Capture-Tiny-0.48.tar.gz)</literallayout>
</para>
</listitem>
</itemizedlist>
<!-- Class::Accessor -->
<bridgehead renderas="sect3" id="perl-class-accessor"
xreflabel="Class::Accessor-&Class-Accessor-version;">
Class::Accessor-&Class-Accessor-version;</bridgehead>
<indexterm zone="perl-modules perl-class-accessor">
<primary sortas="a-Class-Accessor">Class::Accessor</primary>
</indexterm>
<para>This module generators accessors/mutators for your class. It uses
the standard <xref linkend="perl-standard-install"/>.</para>
<!--Class-Accessor -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Class-Accessor-download-http;">Class::Accessor-&Class-Accessor-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Class-Accessor-download-http;
MD5 sum: &Class-Accessor-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- Data::Compare -->
<bridgehead renderas="sect3" id="perl-data-compare"
xreflabel="Data::Compare-&Data-Compare-version;">
Data::Compare-&Data-Compare-version;</bridgehead>
<indexterm zone="perl-modules perl-data-compare">
<primary sortas="a-Data-Compare">Data::Compare</primary>
</indexterm>
<para>The Data::Compare module compares two <application>perl</application>
data structures. This module and its dependencies use the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Data-Compare -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Data-Compare-download-http;">Data::Compare-&Data-Compare-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Data-Compare-download-http;
MD5 sum: &Data-Compare-md5sum;</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/File-Find-Rule-0.04.tar.gz">File::Find::Rule</ulink>
(https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/File-Find-Rule-0.04.tar.gz)</literallayout>
<itemizedlist>
<listitem>
<para>
<xref linkend="perl-number-compare"/>
</para>
</listitem>
<listitem>
<para>
<xref linkend="perl-text-glob"/>
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Data::Dump -->
<bridgehead renderas="sect3" id="perl-data-dump"
xreflabel="Data::Dump-&Data-Dump-version;">
Data::Dump-&Data-Dump-version;</bridgehead>
<indexterm zone="perl-modules perl-data-dump">
<primary sortas="a-Data-Dump">Data::Dump</primary>
</indexterm>
<para>This module provides pretty printing of data structures. It uses
the standard <xref linkend="perl-standard-install"/>.</para>
<!-- Data-Dump -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Data-Dump-download-http;">Data::Dump-&Data-Dump-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Data-Dump-download-http;
MD5 sum: &Data-Dump-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- Data::Uniqid -->
<bridgehead renderas="sect3" id="perl-data-uniqid"
xreflabel="Data::Uniqid-&Data-Uniqid-version;">
Data::Uniqid-&Data-Uniqid-version;</bridgehead>
<indexterm zone="perl-modules perl-data-uniqid">
<primary sortas="a-Data-Uniqid">Data::Uniqid</primary>
</indexterm>
<para>This module provides three simple routines for generating unique IDs.
It uses the standard <xref linkend="perl-standard-install"/>.</para>
<para>Although the final test fails and reports an Error, the test suite
returns a status of 0. This error can safely be ignored.</para>
<!-- Data-Uniqid -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Data-Uniqid-download-http;">Data::Uniqid-&Data-Uniqid-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Data-Uniqid-download-http;
MD5 sum: &Data-Uniqid-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- DateTime is a dependency of DateTime-Calendar-Julian and DateTime-Format-Builder
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-datetime"
xreflabel="DateTime">
DateTime</bridgehead>
<indexterm zone="perl-modules perl-datetime">
<primary sortas="a-DateTime">DateTime</primary>
</indexterm>
<para>DateTime provides a date and time object for perl.
It and its dependencies use the standard
<xref linkend="perl-standard-install"/> except that Test::utf8
uses the 'unsafe' variant, and those which need
<xref linkend="perl-module-build"/> use
<xref linkend="perl-build-install"/>.</para>
<!-- DateTime -->
&lfs83_checked;
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-1.50.tar.gz">DateTime</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-1.50.tar.gz)</literallayout>
<itemizedlist>
<!-- Both DateTime::Locale and DateTime::TimeZone now need
namespace::autoclean, Specio and Params::ValidationCompiler.
The latter needs Specio but only for its test suite -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/L/LE/LEONT/CPAN-Meta-Check-0.014.tar.gz">CPAN::Meta::Check</ulink>
(https://cpan.metacpan.org/authors/id/L/LE/LEONT/CPAN-Meta-Check-0.014.tar.gz)</literallayout>
<itemizedlist> <!-- dep for CPAN-Meta-Check -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Test-Deep-1.128.tar.gz">Test::Deep</ulink>
(https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Test-Deep-1.128.tar.gz)</literallayout>
</listitem>
</itemizedlist> <!-- end of dep for CPAN-Meta-Check -->
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/E/ET/ETHER/namespace-autoclean-0.28.tar.gz">namespace::autoclean</ulink>
(https://cpan.metacpan.org/authors/id/E/ET/ETHER/namespace-autoclean-0.28.tar.gz)</literallayout>
<itemizedlist><!-- deps for namespace::autoclean -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/E/ET/ETHER/B-Hooks-EndOfScope-0.24.tar.gz">B::Hooks::EndOfScope</ulink>
(https://cpan.metacpan.org/authors/id/E/ET/ETHER/B-Hooks-EndOfScope-0.24.tar.gz)</literallayout>
<itemizedlist><!-- deps for B::Hooks::EndOfScope -->
<listitem>
<para><xref linkend="perl-module-implementation"/></para>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/F/FR/FREW/Sub-Exporter-Progressive-0.001013.tar.gz">Sub::Exporter::Progressive</ulink>
(https://cpan.metacpan.org/authors/id/F/FR/FREW/Sub-Exporter-Progressive-0.001013.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/V/VP/VPIT/Variable-Magic-0.62.tar.gz">Variable::Magic</ulink>
(https://cpan.metacpan.org/authors/id/V/VP/VPIT/Variable-Magic-0.62.tar.gz)</literallayout>
</listitem>
</itemizedlist><!-- end of deps for B::Hooks::EndOfScope -->
</listitem>
<listitem>
<para><xref linkend="perl-sub-identify"/></para>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/R/RI/RIBASUSHI/namespace-clean-0.27.tar.gz">namespace::clean</ulink>
(https://cpan.metacpan.org/authors/id/R/RI/RIBASUSHI/namespace-clean-0.27.tar.gz)</literallayout>
<itemizedlist> <!-- deps of namespace-clean -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DO/DOY/Package-Stash-0.37.tar.gz">Package::Stash</ulink>
(https://cpan.metacpan.org/authors/id/D/DO/DOY/Package-Stash-0.37.tar.gz)</literallayout>
<itemizedlist><!-- deps of Package-Stash -->
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DO/DOY/Dist-CheckConflicts-0.11.tar.gz">Dist::CheckConflicts</ulink>
(https://cpan.metacpan.org/authors/id/D/DO/DOY/Dist-CheckConflicts-0.11.tar.gz)</literallayout>
<!-- Module-Runtime, Test-Fatal pulled in by Module-Implementation -->
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DO/DOY//Package-Stash-XS-0.28.tar.gz">Package::Stash::XS</ulink>
(https://cpan.metacpan.org/authors/id/D/DO/DOY//Package-Stash-XS-0.28.tar.gz)</literallayout>
<!-- Test-Fatal is pulled in by Module-Implementation for B-Hooks... above -->
<itemizedlist> <!-- deps of Package-Stash-XS -->
<listitem>
<para>
<xref linkend="perl-test-requires"/>
(for the test suite)
</para>
</listitem>
</itemizedlist> <!-- end of deps for Package-Stash-XS -->
</listitem>
</itemizedlist> <!-- end of deps for Package-Stash -->
</listitem>
</itemizedlist>
</listitem>
</itemizedlist> <!-- end of deps for namespace::autoclean -->
</listitem>
<!-- Specio::Library::Builtins and Specio::Library::String both come from Specio -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Specio-0.42.tar.gz">Specio</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Specio-0.42.tar.gz)</literallayout>
<itemizedlist><!--- deps for Specio -->
<listitem><literallayout><ulink url="http://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Devel-StackTrace-2.03.tar.gz">Devel::StackTrace</ulink>
(http://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Devel-StackTrace-2.03.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DO/DOY/Eval-Closure-0.14.tar.gz">Eval::Closure</ulink>
(https://cpan.metacpan.org/authors/id/D/DO/DOY/Eval-Closure-0.14.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/H/HA/HAARG/MRO-Compat-0.13.tar.gz">MRO::Compat</ulink>
(https://cpan.metacpan.org/authors/id/H/HA/HAARG/MRO-Compat-0.13.tar.gz)</literallayout>
</listitem>
<!-- Role::Tiny::Compat is part of Role::Tiny -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/H/HA/HAARG/Role-Tiny-2.000006.tar.gz">Role::Tiny</ulink>
(https://cpan.metacpan.org/authors/id/H/HA/HAARG/Role-Tiny-2.000006.tar.gz)</literallayout>
</listitem>
<!-- Test::Fatal is pulled in to test Dist::CheckConflicts -->
<listitem>
<para>
<xref linkend="perl-test-needs"/>
</para>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/H/HA/HAARG/Sub-Quote-2.005001.tar.gz">Sub::Quote</ulink>
(https://cpan.metacpan.org/authors/id/H/HA/HAARG/Sub-Quote-2.005001.tar.gz) (for the test suite)</literallayout>
<itemizedlist>
<listitem>
<para>
<xref linkend="perl-test-fatal"/> (for the test suite)
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist> <!-- end of Specio deps -->
</listitem>
<!-- Params::ValidationCompiler needs Specio for its test suite -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Params-ValidationCompiler-0.30.tar.gz">Params::ValidationCompiler</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Params-ValidationCompiler-0.30.tar.gz)</literallayout>
<itemizedlist><!--- deps for Params::ValidationCompiler -->
<!-- Eval::Closure was built for Specio -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Exception-Class-1.44.tar.gz">Exception::Class</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Exception-Class-1.44.tar.gz)</literallayout>
<itemizedlist><!-- deps for Exception::Class - DevelStackTrace was built for Specio -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/T/TM/TMTM/Class-Data-Inheritable-0.08.tar.gz">Class::Data::Inheritable</ulink>
(https://cpan.metacpan.org/authors/id/T/TM/TMTM/Class-Data-Inheritable-0.08.tar.gz)</literallayout>
</listitem>
</itemizedlist> <!-- end of deps for Exception::Class -->
</listitem>
<!-- Test2::Plugin::NoWarnings -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Test2-Plugin-NoWarnings-0.06.tar.gz">Test2::Plugin::NoWarnings</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Test2-Plugin-NoWarnings-0.06.tar.gz) (for the test suite)</literallayout>
<itemizedlist>
<!-- Test2::Bundle::Extended and Test2::Require::Module are from Test2-Suite -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Test2-Suite-0.000115.tar.gz">Test2::Suite</ulink>
(https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Test2-Suite-0.000115.tar.gz)</literallayout>
<itemizedlist> <!-- deps for Test2::Suite -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Importer-0.025.tar.gz">Importer</ulink>
(https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Importer-0.025.tar.gz)</literallayout>
</listitem>
<!-- Test2 is part of Test::Simple -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Test-Simple-1.302138.tar.gz">Test::Simple</ulink>
(https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Test-Simple-1.302138.tar.gz)</literallayout>
</listitem>
<!-- Sub::Info --> <!-- needs Test2 and Importer -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Sub-Info-0.002.tar.gz">Sub::Info</ulink>
(https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Sub-Info-0.002.tar.gz)</literallayout>
</listitem>
<!-- Term::Table --> <!-- needs Test2 and Importer -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Term-Table-0.012.tar.gz">Term::Table</ulink>
(https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Term-Table-0.012.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/S/SI/SIMONW/Module-Pluggable-5.2.tar.gz">Module::Pluggable</ulink>
(https://cpan.metacpan.org/authors/id/S/SI/SIMONW/Module-Pluggable-5.2.tar.gz) (for the test suite)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/C/CH/CHOCOLATE/Scope-Guard-0.21.tar.gz">Scope::Guard</ulink>
(https://cpan.metacpan.org/authors/id/C/CH/CHOCOLATE/Scope-Guard-0.21.tar.gz) (for the test suite)</literallayout>
</listitem>
</itemizedlist> <!-- end of deps for Test2::Suite -->
</listitem>
</itemizedlist> <!-- end of deps for Test2::Plugin::NoWarnings -->
</listitem>
<!-- Test::Without::Module -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/C/CO/CORION/Test-Without-Module-0.20.tar.gz">Test::Without::Module</ulink>
(https://cpan.metacpan.org/authors/id/C/CO/CORION/Test-Without-Module-0.20.tar.gz)</literallayout>
</listitem>
</itemizedlist> <!-- end of Params::ValidationCompiler deps -->
</listitem>
<!-- DateTime::Locale -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-Locale-1.22.tar.gz">DateTime::Locale</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-Locale-1.22.tar.gz)</literallayout>
<itemizedlist>
<!-- deps for DateTime::Locale mostly pulled in for DateTime above -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/E/ET/ETHER/File-ShareDir-Install-0.13.tar.gz">File::ShareDir::Install</ulink>
(https://cpan.metacpan.org/authors/id/E/ET/ETHER/File-ShareDir-Install-0.13.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/R/RE/REHSACK/File-ShareDir-1.116.tar.gz">File::ShareDir</ulink>
(https://cpan.metacpan.org/authors/id/R/RE/REHSACK/File-ShareDir-1.116.tar.gz) (for the test suite)</literallayout>
<itemizedlist><!-- File-ShareDir deps apart from File::ShareDir:Install (above) -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/Class-Inspector-1.32.tar.gz">Class::Inspector</ulink>
(https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/Class-Inspector-1.32.tar.gz)</literallayout>
</listitem>
</itemizedlist>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/K/KE/KENTNL/Test-File-ShareDir-1.001002.tar.gz">Test::File::ShareDir</ulink>
(https://cpan.metacpan.org/authors/id/K/KE/KENTNL/Test-File-ShareDir-1.001002.tar.gz) (for the test suite)</literallayout>
<itemizedlist><!-- Test-File-ShareDir deps -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Class-Tiny-1.006.tar.gz">Class::Tiny</ulink>
(https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Class-Tiny-1.006.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DM/DMUEY/File-Copy-Recursive-0.44.tar.gz">File::Copy::Recursive</ulink>
(https://cpan.metacpan.org/authors/id/D/DM/DMUEY/File-Copy-Recursive-0.44.tar.gz)</literallayout>
<itemizedlist><!-- deps for File-Copy-Recursive -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Path-Tiny-0.108.tar.gz">Path::Tiny</ulink>
(https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Path-Tiny-0.108.tar.gz) (for the test suite)</literallayout>
</listitem>
<listitem>
<para>
<xref linkend="perl-test-exception"/> (for the test suite)
</para>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/B/BD/BDFOY/Test-File-1.443.tar.gz">Test::File</ulink>
(https://cpan.metacpan.org/authors/id/B/BD/BDFOY/Test-File-1.443.tar.gz) (for the test suite)</literallayout>
<itemizedlist><!-- deps for Test-File -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/M/MA/MARKF/Test-utf8-1.01.tar.gz">Test::utf8</ulink>
(https://cpan.metacpan.org/authors/id/M/MA/MARKF/Test-utf8-1.01.tar.gz)</literallayout>
</listitem>
</itemizedlist> <!-- end of deps for Test-File -->
</listitem>
<listitem>
<para>
<xref linkend="perl-test-warnings"/> (for the test suite)
</para>
</listitem>
</itemizedlist> <!-- end of deps for File-Copy-Recursive -->
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/C/CH/CHOCOLATE/Scope-Guard-0.21.tar.gz">Scope::Guard</ulink>
(https://cpan.metacpan.org/authors/id/C/CH/CHOCOLATE/Scope-Guard-0.21.tar.gz)</literallayout>
</listitem>
<listitem>
<para>
<xref linkend="perl-test-fatal"/>
</para>
</listitem>
</itemizedlist>
</listitem>
<!-- Test-Warnings for test suite now pulled in for File-Copy-Recursive -->
</itemizedlist> <!-- end of deps for DateTime::Locale -->
</listitem>
<!-- DateTime::TimeZone -->
<listitem>
<literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-TimeZone-2.19.tar.gz">DateTime::TimeZone</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-TimeZone-2.19.tar.gz)</literallayout>
<itemizedlist> <!-- deps for DateTime::timeZone -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/S/SH/SHAY/Class-Singleton-1.5.tar.gz">Class::Singleton</ulink>
(https://cpan.metacpan.org/authors/id/S/SH/SHAY/Class-Singleton-1.5.tar.gz)</literallayout>
</listitem>
<!-- Module::Runtime is pulled in by Dist::CheckConflicts -->
<listitem>
<para><xref linkend="perl-try-tiny"/></para>
</listitem>
</itemizedlist> <!-- end of deps for DateTime::TimeZone -->
</listitem>
<!-- Test::Fatal pulled in for Dist-CheckConflicts -->
<!-- Test::Warnings pulled in for DateTime::Locale -->
</itemizedlist> <!-- end of deps for DateTime -->
</listitem>
</itemizedlist>
<!-- DateTime::Calendar::Julian -->
<bridgehead renderas="sect3" id="perl-datetime-calendar-julian"
xreflabel="DateTime::Calendar::Julian-&DateTime-Calendar-Julian-version;">
DateTime::Calendar::Julian-&DateTime-Calendar-Julian-version;</bridgehead>
<indexterm zone="perl-modules perl-datetime-calendar-julian">
<primary sortas="a-DateTime-Calendar-Julian">DateTime::Calendar::Julian</primary>
</indexterm>
<para>DateTime::Calendar::Julian implements the Julian Calendar. This
module and its dependencies use the standard
<xref linkend="perl-standard-install"/> except for those needing
<xref linkend="perl-module-build"/>, which use
<xref linkend="perl-build-install"/>.</para>
<!-- DateTime-Calendar-Julian -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&DateTime-Calendar-Julian-download-http;">DateTime::Calendar::Julian-&DateTime-Calendar-Julian-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&DateTime-Calendar-Julian-download-http;
MD5 sum: &DateTime-Calendar-Julian-md5sum;</literallayout>
<itemizedlist>
<listitem>
<para><xref linkend="perl-datetime"/></para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- DateTime::Format::Builder -->
<bridgehead renderas="sect3" id="perl-datetime-format-builder"
xreflabel="DateTime::Format::Builder-&DateTime-Format-Builder-version;">
DateTime::Format::Builder-&DateTime-Format-Builder-version;</bridgehead>
<indexterm zone="perl-modules perl-datetime-format-builder">
<primary sortas="a-DateTime-Format-Builder">DateTime::Format::Builder</primary>
</indexterm>
<para>DateTime::Format::Builder creates DateTime parser classes and objects.
This module and its dependencies use the standard
<xref linkend="perl-standard-install"/> except for those needing
<xref linkend="perl-module-build"/>, which use
<xref linkend="perl-build-install"/>.</para>
<!-- DateTime-Format-Builder -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&DateTime-Format-Builder-download-http;">DateTime::Format::Builder-&DateTime-Format-Builder-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&DateTime-Format-Builder-download-http;
MD5 sum: &DateTime-Format-Builder-md5sum;</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Class-Factory-Util-1.7.tar.gz">Class::Factory::Util</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Class-Factory-Util-1.7.tar.gz)</literallayout>
<itemizedlist>
<listitem>
<para><xref linkend="perl-module-build"/></para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para><xref linkend="perl-datetime"/></para>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-Format-Strptime-1.75.tar.gz">DateTime::Format::Strptime</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-Format-Strptime-1.75.tar.gz)</literallayout>
<itemizedlist> <!-- deps of DateTime-Format-Strptime -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Package-DeprecationManager-0.17.tar.gz">Package::DeprecationManager</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Package-DeprecationManager-0.17.tar.gz)</literallayout>
<itemizedlist> <!-- deps of Package-DeprecationManager -->
<!-- Package::Stash is p ulled in by DateTime -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/A/AD/ADAMK/Params-Util-1.07.tar.gz">Params::Util</ulink>
(https://cpan.metacpan.org/authors/id/A/AD/ADAMK/Params-Util-1.07.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Sub-Install-0.928.tar.gz">Sub::Install</ulink>
(https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Sub-Install-0.928.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Sub-Name-0.21.tar.gz">Sub::Name</ulink>
(https://cpan.metacpan.org/authors/id/E/ET/ETHER/Sub-Name-0.21.tar.gz)</literallayout>
</listitem>
</itemizedlist> <!-- end of deps for Package-DeprecationManager -->
</listitem>
<!-- Module::Implementation and Test::Fatal are pulled in by DateTime -->
</itemizedlist> <!-- end of deps for DateTime-Format-Strptime -->
</listitem>
<!-- Test-Fatal and Test-Warnings pulled in by DateTime -->
<!-- Params-Validate -->
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Params-Validate-1.29.tar.gz">Params::Validate</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Params-Validate-1.29.tar.gz) - uses <xref linkend="perl-build-install"/></literallayout>
<!-- deps for Params::Validate:
Module::Build is a dep of Module::Implementation via Module::Runtime,
pulled in by Package::Stash in namespace::clean for
namespace::autoclean in DateTime, and for test suites Test::Fatal is
pulled in for Dist::CheckConflicts for Package::Stash, and
Test::Requires by Package::Stash::XS for Package::Stash -->
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Encode::EUCJPASCII -->
<bridgehead renderas="sect3" id="perl-encode-eucjpascii"
xreflabel="Encode::EUCJPASCII-&Encode-EUCJPASCII-version;">
Encode::EUCJPASCII-&Encode-EUCJPASCII-version;</bridgehead>
<indexterm zone="perl-modules perl-encode-eucjpascii">
<primary sortas="a-Encode-EUCJPASCII">Encode::EUCJPASCII</primary>
</indexterm>
<para>Encode::EUCJPASCII provides an eucJP-open (Extended Unix Code,
Japanese) mapping. This module uses the
standard <xref linkend="perl-standard-install"/>.</para>
<!-- Encode-EUCJPASCII -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Encode-EUCJPASCII-download-http;">Encode::EUCJPASCII-&Encode-EUCJPASCII-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Encode-EUCJPASCII-download-http;
MD5 sum: &Encode-EUCJPASCII-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- Encode::HanExtra -->
<bridgehead renderas="sect3" id="perl-encode-hanextra"
xreflabel="Encode::HanExtra-&Encode-HanExtra-version;">
Encode::HanExtra-&Encode-HanExtra-version;</bridgehead>
<indexterm zone="perl-modules perl-encode-hanextra">
<primary sortas="a-Encode-HanExtra">Encode::HanExtra</primary>
</indexterm>
<para>The Encode::HanExtra module provides extra sets of Chinese Encodings.
This module uses the 'unsafe' variant of the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Encode-HanExtra -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Encode-HanExtra-download-http;">Encode::HanExtra-&Encode-HanExtra-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Encode-HanExtra-download-http;
MD5 sum: &Encode-HanExtra-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- Encode::JIS2K -->
<bridgehead renderas="sect3" id="perl-encode-jis2k"
xreflabel="Encode::JIS2K-&Encode-JIS2K-version;">
Encode::JIS2K-&Encode-JIS2K-version;</bridgehead>
<indexterm zone="perl-modules perl-encode-jis2k">
<primary sortas="a-Encode-JIS2K">Encode::JIS2K</primary>
</indexterm>
<para>The Encode::JIS2K module provides JIS X 0212 (aka JIS 2000)
Encodings. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Encode-JIS2K -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Encode-JIS2K-download-http;">Encode::JIS2K-&Encode-JIS2K-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Encode-JIS2K-download-http;
MD5 sum: &Encode-JIS2K-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- Error -->
<bridgehead renderas="sect3" id="perl-error"
xreflabel="Error-&Error-version;">
Error-&Error-version;</bridgehead>
<indexterm zone="perl-modules perl-error">
<primary sortas="a-Error">Error</primary>
</indexterm>
<para>The Error module provides Error/exception handling in an
object-oriented way. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Error -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Error-download-http;">Error-&Error-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Error-download-http;
MD5 sum: &Error-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- File::BaseDir -->
<!--<bridgehead renderas="sect3" id="perl-file-basedir"
xreflabel="File::BaseDir-&File-BaseDir-version;">
File::BaseDir-&File-BaseDir-version;</bridgehead>
<indexterm zone="perl-modules perl-file-basedir">
<primary sortas="a-File-BaseDir">File::BaseDir</primary>
</indexterm>
<para>The File::BaseDir module compares two <application>perl</application>
data structures. This module uses the <xref linkend="perl-build-install"/>.
Its dependencies use the standard <xref linkend="perl-standard-install"/>.
One set of tests (03_userdirs.t) may fail if
<xref linkend="xdg-user-dirs"/> is installed and
<envar>XDG_CONFIG_HOME</envar> is set.</para>-->
<!-- File-BaseDir -->
<!--&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&File-BaseDir-download-http;">File::BaseDir-&File-BaseDir-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&File-BaseDir-download-http;
MD5 sum: &File-BaseDir-md5sum;</literallayout>
<itemizedlist>
<listitem>
<para><xref linkend="perl-module-build"/></para>
</listitem>
<listitem>
<para><xref linkend="perl-file-which"/></para>
</listitem>
<listitem>
<para>
<xref linkend="perl-ipc-system-simple"/> (for the test suite)
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>-->
<!-- File::Slurper -->
<bridgehead renderas="sect3" id="perl-file-slurper"
xreflabel="File::Slurper-&File-Slurper-version;">
File::Slurper-&File-Slurper-version;</bridgehead>
<indexterm zone="perl-modules perl-file-slurper">
<primary sortas="a-File-Slurper">File::Slurper</primary>
</indexterm>
<para>File::Slurper is a simple, sane and efficient module to
slurp a file. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- File-Slurper -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&File-Slurper-download-http;">File::Slurper-&File-Slurper-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&File-Slurper-download-http;
MD5 sum: &File-Slurper-md5sum;</literallayout>
<itemizedlist>
<listitem>
<para>
<xref linkend="perl-test-warnings"/>
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- File::Which -->
<bridgehead renderas="sect3" id="perl-file-which"
xreflabel="File::Which-&File-Which-version;">
File::Which-&File-Which-version;</bridgehead>
<indexterm zone="perl-modules perl-file-which">
<primary sortas="a-File-Which">File::Which</primary>
</indexterm>
<para>File::Which provides a portable implementation of the
&apos;which&apos; utility. This module and its dependencies use the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- File-Which -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&File-Which-download-http;">
File::Which-&File-Which-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&File-Which-download-http;
MD5 sum: &File-Which-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- HTML::Parser -->
<bridgehead renderas="sect3" id="perl-html-parser"
xreflabel="HTML::Parser-&HTML-Parser-version;">
HTML::Parser-&HTML-Parser-version;</bridgehead>
<indexterm zone="perl-modules perl-html-parser">
<primary sortas="a-HTML-Parser">HTML::Parser</primary>
</indexterm>
<para>The HTML::Parser distribution is a collection of modules that parse
and extract information from HTML documents. This module and the dependency
modules use the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- HTML-Parser -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&HTML-Parser-download-http;">HTML::Parser-&HTML-Parser-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&HTML-Parser-download-http;
MD5 sum: &HTML-Parser-md5sum;</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/P/PE/PETDANCE/HTML-Tagset-3.20.tar.gz">HTML::Tagset</ulink>
(https://cpan.metacpan.org/authors/id/P/PE/PETDANCE/HTML-Tagset-3.20.tar.gz)</literallayout>
</listitem>
<listitem>
<para>
<xref role="runtime" linkend="perl-lwp"/> (circular; howevever, it can
be installed after HTML::Parser as it is only a run-time
requirement for the included HTML::HeadParser module)
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- HTTP-Daemon -->
<bridgehead renderas="sect3" id="perl-http-daemon"
xreflabel="HTTP::Daemon-&HTTP-Daemon-version;">
HTTP::Daemon-&HTTP-Daemon-version;</bridgehead>
<indexterm zone="perl-modules perl-http-daemon">
<primary sortas="a-HTTP-Daemon">HTTP-Daemon</primary>
</indexterm>
<para>Instances of the HTTP::Daemon class are HTTP/1.1 servers that listen on a
socket for incoming requests. The HTTP::Daemon is a subclass of IO::Socket::INET,
so you can perform socket operations directly on it too. This module uses the
standard <xref linkend="perl-standard-install"/>.</para>
<!-- HTTP-Daemon -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&HTTP-Daemon-download-http;">HTTP::Daemon-&HTTP-Daemon-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&HTTP-Daemon-download-http;
MD5 sum: &HTTP-Daemon-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- IO::Socket::SSL -->
<bridgehead renderas="sect3" id="perl-io-socket-ssl"
xreflabel="IO::Socket::SSL-&IO-Socket-SSL-version;">
IO::Socket::SSL-&IO-Socket-SSL-version;</bridgehead>
<indexterm zone="perl-modules perl-io-socket-ssl">
<primary sortas="a-IO-Socket-SSL">IO::Socket::SSL</primary>
</indexterm>
<para>IO::Socket::SSL makes using SSL/TLS much easier by wrapping the necessary
functionality into the familiar IO::Socket interface and providing secure
defaults whenever possible. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<para>If scripting, use 'yes | Makefile.PL' because it will ask if external
tests should be run.</para>
<note>
<para>
The tests for IO::Socket::SSL are broken with openssl-1.1.1 and the
tests for Net::SSLeay hang with that version.
</para>
</note>
<!-- IO-Socket-SSL -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&IO-Socket-SSL-download-http;">IO::Socket::SSL-&IO-Socket-SSL-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&IO-Socket-SSL-download-http;
MD5 sum: &IO-Socket-SSL-md5sum;</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/M/MI/MIKEM/Net-SSLeay-1.85.tar.gz">Net::SSLeay</ulink>
(https://cpan.metacpan.org/authors/id/M/MI/MIKEM/Net-SSLeay-1.85.tar.gz)
When scripting, pipe the <command>perl Makefile.PL</command> command through <command>yes "" |</command>, since some user input is sought</literallayout>
<!-- The test suite for NET::SSLeay has issues with OpenSSL-1.1.1 -->
</listitem>
<listitem>
<para>
<xref linkend="make-ca"/>
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- IPC::Run3 -->
<bridgehead renderas="sect3" id="perl-ipc-run3"
xreflabel="IPC::Run3-&IPC-Run3-version;">
IPC::Run3-&IPC-Run3-version;</bridgehead>
<indexterm zone="perl-modules perl-ipc-run3">
<primary sortas="a-IPC-Run3">IPC::Run3</primary>
</indexterm>
<para>The IPC::Run3 module is used to run a subprocess with input/ouput
redirection. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- IPC-Run3 -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&IPC-Run3-download-http;">IPC::Run3-&IPC-Run3-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&IPC-Run3-download-http;
MD5 sum: &IPC-Run3-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- IPC::System::Simple is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-ipc-system-simple"
xreflabel="IPC::System::Simple">
IPC::System::Simple</bridgehead>
<indexterm zone="perl-modules perl-ipc-system-simple">
<primary sortas="a-IPC-System-Simple">IPC::System::Simple</primary>
</indexterm>
<para>IPC::System::Simple allows you to run commands simply, with detailed
diagnostics. It uses the standard <xref
linkend="perl-standard-install"/>.</para>
<!-- IPC-System-Simple -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<literallayout><ulink url="https://cpan.metacpan.org/authors/id/P/PJ/PJF/IPC-System-Simple-1.25.tar.gz">IPC::System::Simple</ulink>
(https://cpan.metacpan.org/authors/id/P/PJ/PJF/IPC-System-Simple-1.25.tar.gz)</literallayout>
</para>
</listitem>
</itemizedlist>
<!-- LWP (but listed as libwww-perl) -->
<bridgehead renderas="sect3" id="perl-lwp"
xreflabel="libwww-perl-&LWP-version;">
libwww-perl-&LWP-version; (a.k.a. Bundle::LWP)</bridgehead>
<indexterm zone="perl-modules perl-lwp">
<primary sortas="a-libwww-perl">libwww-perl</primary>
</indexterm>
<para>The libwww-perl (Bundle::LWP) collection is a set of
<application>Perl</application> modules which provide a simple and
consistent application programming interface to the World-Wide Web. The
main focus of the library is to provide classes and functions that allow
you to write WWW clients. The library also contains modules that are of
more general use and even classes that help you implement simple HTTP
servers. The LWP collection and all its dependency modules use the standard
<xref linkend="perl-standard-install"/>. The dependencies should be
installed in the order listed below. Ensure you install the dependency
chain for each module before installing the modules.</para>
<!-- libwww-perl aka Bundle-LWP -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&libwww-perl-download-http;">libwww-perl-&LWP-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&libwww-perl-download-http;
MD5 sum: &libwww-perl-md5sum;</literallayout>
<itemizedlist>
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/G/GA/GAAS/Encode-Locale-1.05.tar.gz">Encode::Locale</ulink>
(https://cpan.metacpan.org/authors/id/G/GA/GAAS/Encode-Locale-1.05.tar.gz) </literallayout>
</listitem>
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/G/GA/GAAS/HTML-Form-6.03.tar.gz">HTML::Form</ulink>
(https://cpan.metacpan.org/authors/id/G/GA/GAAS/HTML-Form-6.03.tar.gz) </literallayout>
<itemizedlist>
<listitem>
<para>
<xref linkend="perl-uri"/>
</para>
</listitem>
<listitem>
<para>
<xref linkend="perl-html-parser"/>
</para>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/O/OA/OALDERS//HTTP-Message-6.18.tar.gz">HTTP::Message</ulink>
(https://cpan.metacpan.org/authors/id/O/OA/OALDERS//HTTP-Message-6.18.tar.gz)</literallayout>
<itemizedlist><listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/G/GA/GAAS/HTTP-Date-6.02.tar.gz">HTTP::Date</ulink>
(https://cpan.metacpan.org/authors/id/G/GA/GAAS/HTTP-Date-6.02.tar.gz)</literallayout>
</listitem>
<listitem><literallayout> <ulink url="https://cpan.metacpan.org/authors/id/C/CJ/CJM/IO-HTML-1.001.tar.gz">IO::HTML</ulink>
(https://cpan.metacpan.org/authors/id/C/CJ/CJM/IO-HTML-1.001.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/G/GA/GAAS/LWP-MediaTypes-6.02.tar.gz">LWP::MediaTypes</ulink>
(https://cpan.metacpan.org/authors/id/G/GA/GAAS/LWP-MediaTypes-6.02.tar.gz)</literallayout>
</listitem>
<listitem>
<para>
<xref linkend="perl-try-tiny"/> (for the test suite)
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/O/OA/OALDERS/HTTP-Cookies-6.04.tar.gz">HTTP::Cookies</ulink>
(https://cpan.metacpan.org/authors/id/O/OA/OALDERS/HTTP-Cookies-6.04.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/G/GA/GAAS/HTTP-Negotiate-6.01.tar.gz">HTTP::Negotiate</ulink>
(https://cpan.metacpan.org/authors/id/G/GA/GAAS/HTTP-Negotiate-6.01.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/O/OA/OALDERS/Net-HTTP-6.18.tar.gz">Net::HTTP</ulink>
("https://cpan.metacpan.org/authors/id/O/OA/OALDERS/Net-HTTP-6.18.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/G/GA/GAAS/WWW-RobotRules-6.02.tar.gz">WWW::RobotRules</ulink>
(https://cpan.metacpan.org/authors/id/G/GA/GAAS/WWW-RobotRules-6.02.tar.gz)</literallayout>
</listitem>
<listitem>
<para><xref linkend="perl-http-daemon"/></para>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/G/GA/GAAS/File-Listing-6.04.tar.gz">File::Listing</ulink>
(https://cpan.metacpan.org/authors/id/G/GA/GAAS/File-Listing-6.04.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/M/MA/MALLEN/Test-RequiresInternet-0.05.tar.gz">Test::RequiresInternet</ulink> (for the test suite)
(https://cpan.metacpan.org/authors/id/M/MA/MALLEN/Test-RequiresInternet-0.05.tar.gz)</literallayout>
</listitem>
<listitem>
<para>
<xref linkend="perl-test-fatal"/> (for the test suite)
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<para>After the LWP installation, if you want HTTPS protocol support,
install <xref linkend="perl-lwp-protocol-https"/></para>
<!-- Lingua-Translit -->
<bridgehead renderas="sect3" id="perl-lingua-translit"
xreflabel="Lingua::Translit-&Lingua-Translit-version;">
Lingua::Translit-&Lingua-Translit-version; (Lingua::Translit)</bridgehead>
<indexterm zone="perl-modules perl-lingua-translit">
<primary sortas="a-Lingua-Translit">Lingua::Translit</primary>
</indexterm>
<para>
Lingua::Translit and its <command>translit</command> program transliterate
text between writing systems. This module uses the standard
<xref linkend="perl-standard-install"/>.
</para>
<!-- Lingua-Translit -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Lingua-Translit-download-http;">Lingua::Translit-&Lingua-Translit-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Lingua-Translit-download-http;
MD5 sum: &Lingua-Translit-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- List::AllUtils -->
<bridgehead renderas="sect3" id="perl-list-allutils"
xreflabel="List::AllUtils-&List-AllUtils-version;">
List::AllUtils-&List-AllUtils-version;</bridgehead>
<indexterm zone="perl-modules perl-list-allutils">
<primary sortas="a-List-AllUtils">List::AllUtils</primary>
</indexterm>
<para>The List::Allutils module combines List::Util and List::MoreUtils in
one bite-sized package. This module and its dependencies use the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- List-AllUtils -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&List-AllUtils-download-http;">List::AllUtils-&List-AllUtils-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&List-AllUtils-download-http;
MD5 sum: &List-AllUtils-md5sum;</literallayout>
<itemizedlist>
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/List-SomeUtils-0.56.tar.gz">List::SomeUtils</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/List-SomeUtils-0.56.tar.gz) (for the test suite)</literallayout>
<itemizedlist>
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/List-SomeUtils-XS-0.58.tar.gz">List::SomeUtils::XS</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/List-SomeUtils-XS-0.58.tar.gz)</literallayout>
<itemizedlist>
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/L/LE/LEEJO/Test-LeakTrace-0.18.tar.gz">Test::LeakTrace</ulink>
(https://cpan.metacpan.org/authors/id/L/LE/LEEJO/Test-LeakTrace-0.18.tar.gz) (for the test suite)</literallayout>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>
<xref linkend="perl-module-implementation"/>
</para>
</listitem>
</itemizedlist>
</listitem>
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/List-UtilsBy-0.11.tar.gz">List::UtilsBy</ulink>
(https://cpan.metacpan.org/authors/id/P/PE/PEVANS/List-UtilsBy-0.11.tar.gz)</literallayout>
</listitem>
<listitem>
<para>
<xref linkend="perl-test-warnings"/> (for the test suite)
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- List::MoreUtils -->
<bridgehead renderas="sect3" id="perl-list-moreutils"
xreflabel="List::MoreUtils-&List-MoreUtils-version;">
List::MoreUtils-&List-MoreUtils-version;</bridgehead>
<indexterm zone="perl-modules perl-list-moreutils">
<primary sortas="a-List-MoreUtils">List::MoreUtils</primary>
</indexterm>
<para>List::MoreUtils provides the stuff missing in List::Util. This
module uses the standard <xref linkend="perl-standard-install"/>.</para>
<!-- List-MoreUtils -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&List-MoreUtils-download-http;">List::MoreUtils-&List-MoreUtils-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&List-MoreUtils-download-http;
MD5 sum: &List-MoreUtils-md5sum;</literallayout>
<itemizedlist>
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/R/RE/REHSACK/List-MoreUtils-XS-0.428.tar.gz">List::MoreUtils::XS</ulink>
(https://cpan.metacpan.org/authors/id/R/RE/REHSACK/List-MoreUtils-XS-0.428.tar.gz)</literallayout>
</listitem>
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/T/TO/TOBYINK/Exporter-Tiny-1.002001.tar.gz">Exporter::Tiny</ulink>
(https://cpan.metacpan.org/authors/id/T/TO/TOBYINK/Exporter-Tiny-1.002001.tar.gz) (for the test suite)</literallayout>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Log::Log4perl -->
<bridgehead renderas="sect3" id="perl-log-log4perl"
xreflabel="Log::Log4perl-&Log-Log4perl-version;">
Log::Log4perl-&Log-Log4perl-version;</bridgehead>
<indexterm zone="perl-modules perl-log-log4perl">
<primary sortas="a-Log-Log4perl">Log::Log4perl</primary>
</indexterm>
<para>Log::Log4perl provides a Log4j implementation for
<application>perl</application>. This module uses the
standard <xref linkend="perl-standard-install"/>.</para>
<!-- Log-Log4perl -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Log-Log4perl-download-http;">Log::Log4perl-&Log-Log4perl-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Log-Log4perl-download-http;
MD5 sum: &Log-Log4perl-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- LWP::Protocol::https -->
<bridgehead renderas="sect3" id="perl-lwp-protocol-https"
xreflabel="LWP::Protocol::https-&LWP-Protocol-https-version;">
LWP::Protocol::https-&LWP-Protocol-https-version;</bridgehead>
<indexterm zone="perl-modules perl-lwp-protocol-https">
<primary sortas="a-LWP-Protocol-https">LWP::Protocol::https</primary>
</indexterm>
<para>LWP::Protocol::https provides https support for
LWP::UserAgent (i.e. for LWP). This module uses the
standard <xref linkend="perl-standard-install"/> but requires
a patch to use the system certificates (using the CPAN automated
install will instead use <application>Mozilla::CA</application>).
</para>
<bridgehead renderas="sect4">Additional Download</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Required patch:
<ulink url="&patch-root;/LWP-Protocol-https-&LWP-Protocol-https-version;-system_certs-1.patch"/>
</para>
</listitem>
</itemizedlist>
<!-- LWP-Protocol-https -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&LWP-Protocol-https-download-http;">LWP::Protocol::https-&LWP-Protocol-https-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&LWP-Protocol-https-download-http;
MD5 sum: &LWP-Protocol-https-md5sum;</literallayout>
<itemizedlist>
<listitem>
<para><xref linkend="perl-lwp"/></para>
</listitem>
<listitem>
<para><xref linkend="perl-io-socket-ssl"/></para>
</listitem>
<listitem>
<para><xref linkend="make-ca"/> with the
<literal>/etc/pki/tls/certs/ca-bundle.crt</literal> symlink
</para>
</listitem>
<!-- <listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/A/AB/ABH/Mozilla-CA-20180117.tar.gz">Mozilla::CA</ulink>
(https://cpan.metacpan.org/authors/id/A/AB/ABH/Mozilla-CA-20180117.tar.gz)</literallayout>
</listitem>-->
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Module::Build -->
<bridgehead renderas="sect3" id="perl-module-build"
xreflabel="Module::Build-&Module-Build-version;">
Module::Build-&Module-Build-version;</bridgehead>
<indexterm zone="perl-modules perl-module-build">
<primary sortas="a-Module-Build">Module-Build</primary>
</indexterm>
<para>
Module::Build allows perl modules to be built without a
<command>make</command> command being present. This module uses the
standard <xref linkend="perl-standard-install"/>.
</para>
<note>
<para>
When creating the Makefile, this module will report
<literallayout>inc_bundling_support....disabled
requires:
! inc::latest is not installed</literallayout>
but inc::latest is experimental and not needed.
</para>
</note>
<!-- Module-Build -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Module-Build-download-http;">Module::Build-&Module-Build-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Module-Build-download-http;
MD5 sum: &Module-Build-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- Module::Implementation is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-module-implementation"
xreflabel="Module::Implementation">
Module::Implementation</bridgehead>
<indexterm zone="perl-modules perl-module-implementation">
<primary sortas="a-Module-Implementation">Module::Implementation</primary>
</indexterm>
<para>Module::Implementation loads one of several alternate underlying
implementations of a module (e.g. eXternal Subroutine or pure Perl, or an
implementation for a given OS). This module and its dependencies use the
standard
<xref linkend="perl-standard-install"/> except for those needing
<xref linkend="perl-module-build"/>, which use
<xref linkend="perl-build-install"/>.</para>
<!-- Module-Implementation -->
&lfs83_checked;
<itemizedlist>
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Module-Implementation-0.09.tar.gz">Module::Implementation</ulink>
(https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Module-Implementation-0.09.tar.gz)</literallayout>
<itemizedlist>
<listitem>
<para>
<xref linkend="perl-module-runtime"/>
</para>
</listitem>
<listitem>
<para>
<xref linkend="perl-try-tiny"/>
</para>
</listitem>
<listitem>
<para>
<xref linkend="perl-test-fatal"/> (for the test suite)
</para>
</listitem>
<listitem>
<para>
<xref linkend="perl-test-requires"/> (for the test suite)
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Module::Runtime is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-module-runtime"
xreflabel="Module::Runtime">
Module::Runtime</bridgehead>
<indexterm zone="perl-modules perl-module-runtime">
<primary sortas="a-Module-Runtime">Module::Runtime</primary>
</indexterm>
<para>Module::Runtime provides functions to deal with runtime
handling of Perl modules. This module itself uses the
<xref linkend="perl-build-install"/>.</para>
<!-- Module-Runtime -->
&lfs83_checked;
<itemizedlist>
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/Z/ZE/ZEFRAM/Module-Runtime-0.016.tar.gz">Module::Runtime</ulink>
(https://cpan.metacpan.org/authors/id/Z/ZE/ZEFRAM/Module-Runtime-0.016.tar.gz)</literallayout>
<itemizedlist>
<listitem>
<para>
<xref linkend="perl-module-build"/>
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Net::DNS -->
<bridgehead renderas="sect3" id="perl-net-dns"
xreflabel="Net::DNS-&Net-DNS-version;">
Net::DNS-&Net-DNS-version;</bridgehead>
<indexterm zone="perl-modules perl-net-dns">
<primary sortas="a-Net-DNS">Net::DNS</primary>
</indexterm>
<para>Net::DNS is a DNS resolver implemented in
<application>Perl</application>. It can be used to perform nearly any type
of DNS query from a <application>Perl</application> script. The Net::DNS
module and all its dependencies are installed using the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Net-DNS -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Net-DNS-download-http;">Net::DNS-&Net-DNS-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Net-DNS-download-http;
MD5 sum: &Net-DNS-md5sum;</literallayout>
<!-- Dubious, without a working IPv6 connection, this does not alter the test results,
and it is not explicitly referenced in the Net::DNS tarball -->
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/IO-Socket-INET6-2.72.tar.gz">IO::Socket::INET6</ulink>
(https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/IO-Socket-INET6-2.72.tar.gz) (required for IPv6 support)</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/U/UM/UMEMOTO/Socket6-0.28.tar.gz">Socket6</ulink>
(https://cpan.metacpan.org/authors/id/U/UM/UMEMOTO/Socket6-0.28.tar.gz)</literallayout>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Number::Compare is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-number-compare"
xreflabel="Number::Compare">
Number::Compare</bridgehead>
<indexterm zone="perl-modules perl-number-compare">
<primary sortas="a-Number-Compare">Number::Compare</primary>
</indexterm>
<para>Number::Compare compiles a simple comparison to an anonymous subroutine,
which you can call with a value to be tested against. It understands IEC
standard magnitudes (k, ki, m, mi, g, gi). This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Number-Compare -->
&lfs83_checked;
<itemizedlist>
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/Number-Compare-0.03.tar.gz">Number::Compare</ulink>
(https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/Number-Compare-0.03.tar.gz)</literallayout>
</listitem>
</itemizedlist>
<!-- Parse::Yapp -->
<bridgehead renderas="sect3" id="perl-parse-yapp"
xreflabel="Parse::Yapp-&Parse-Yapp-version;">
Parse::Yapp-&Parse-Yapp-version;</bridgehead>
<indexterm zone="perl-modules perl-parse-yapp">
<primary sortas="a-Parse-Yapp">Parse::Yapp</primary>
</indexterm>
<para>Parse::Yapp is a Perl extension for generating and using LALR
parsers.. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Parse-Yapp -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Parse-Yapp-download-http;">Parse::Yapp-&Parse-Yapp-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Parse-Yapp-download-http;
MD5 sum: &Parse-Yapp-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- PerlIO-utf8_strict -->
<bridgehead renderas="sect3" id="perl-perlio-utf8_strict"
xreflabel="PerlIO::utf8_strict-&PerlIO-utf8_strict-version;">
PerlIO::utf8_strict-&PerlIO-utf8_strict-version;</bridgehead>
<indexterm zone="perl-modules perl-perlio-utf8_strict">
<primary sortas="a-PerlIO-utf8_strict">PerlIO-utf8_strict</primary>
</indexterm>
<para>PerlIO::utf8_strict provides a fast and correct UTF-8 IO layer,
including checking the input for correctness. This module and its dependency
modules use the standard <xref linkend="perl-standard-install"/>.</para>
<!-- PerlIO-utf8_strict -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&PerlIO-utf8_strict-download-http;">PerlIO-utf8_strict-&PerlIO-utf8_strict-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&PerlIO-utf8_strict-download-http;
MD5 sum: &PerlIO-utf8_strict-md5sum;</literallayout>
<itemizedlist>
<listitem>
<para>
<xref linkend="perl-test-exception"/> (for the test suite)
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Regexp::Common -->
<bridgehead renderas="sect3" id="perl-regexp-common"
xreflabel="Regexp::Common-&Regexp-Common-version;">
Regexp::Common-&Regexp-Common-version;</bridgehead>
<indexterm zone="perl-modules perl-regexp-common">
<primary sortas="a-Regexp-Common">Regexp::Common</primary>
</indexterm>
<para>Regexp::Common provides commonly requested regular expressions. This
module uses the standard <xref linkend="perl-standard-install"/>.</para>
<!-- Regexp-Common -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Regexp-Common-download-http;">Regexp::Common-&Regexp-Common-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Regexp-Common-download-http;
MD5 sum: &Regexp-Common-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- SGMLSpm -->
<bridgehead renderas="sect3" id="perl-sgmlspm"
xreflabel="SGMLSpm-&SGMLSpm-version;">
SGMLSpm-&SGMLSpm-version;</bridgehead>
<indexterm zone="perl-modules perl-sgmlspm">
<primary sortas="a-SGMLSpm">SGMLSpm</primary>
</indexterm>
<para>The SGMLSpm module is a <application>Perl</application> library
used for parsing the output from James Clark's SGMLS and NSGMLS
parsers. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- SGMLSpm -->
&lfs83_checked;
<para> Before beginning the build, issue
the following command to prevent an error:</para>
<screen><userinput>chmod -v 644 MYMETA.yml</userinput></screen>
<para>
After the package has been installed, run the following command
as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>ln -sv sgmlspl.pl /usr/bin/sgmlspl</userinput></screen>
<itemizedlist>
<listitem>
<para>
<ulink url="&SGMLSpm-download-http;">SGMLSpm-&SGMLSpm-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&SGMLSpm-download-http;
MD5 sum: &SGMLSpm-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- Sort::Key -->
<bridgehead renderas="sect3" id="perl-sort-key"
xreflabel="Sort::Key-&Sort-Key-version;">
Sort::Key-&Sort-Key-version;</bridgehead>
<indexterm zone="perl-modules perl-sort-key">
<primary sortas="a-Sort-Key">Sort::Key</primary>
</indexterm>
<para>Sort::Key provides a set of functions to sort lists of values by some
calculated key value. This module uses the standard <xref
linkend="perl-standard-install"/>.</para>
<!-- Sort-Key -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Sort-Key-download-http;">Sort::Key-&Sort-Key-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Sort-Key-download-http;
MD5 sum: &Sort-Key-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- Sub::Identify is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-sub-identify"
xreflabel="Sub::Identify">
Sub::Identify</bridgehead>
<indexterm zone="perl-modules perl-sub-identify">
<primary sortas="a-Sub-Identify">Sub::Identify</primary>
</indexterm>
<para>Sub::Identify allows you to retrieve the real names of code
references. It uses the standard <xref
linkend="perl-standard-install"/>.</para>
<!-- Sub-Identify -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<literallayout><ulink url="https://cpan.metacpan.org/authors/id/R/RG/RGARCIA/Sub-Identify-0.14.tar.gz">Sub::Identify</ulink>
(https://cpan.metacpan.org/authors/id/R/RG/RGARCIA/Sub-Identify-0.14.tar.gz)</literallayout>
</para>
</listitem>
</itemizedlist>
<!-- Test-Command -->
<bridgehead renderas="sect3" id="perl-test-command"
xreflabel="Test::Command-&Test-Command-version;">
Test::Command-&Test-Command-version;</bridgehead>
<indexterm zone="perl-modules perl-test-command">
<primary sortas="a-Test-Command">Test::Command</primary>
</indexterm>
<para>
This module tests the exit status, STDOUT, or STDERR, of an external
command. This module uses the standard
<xref linkend="perl-standard-install"/>.
</para>
<!-- Test-Command -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Test-Command-download-http;">Test::Command-&Test-Command-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Test-Command-download-http;
MD5 sum: &Test-Command-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- Test::Differences -->
<bridgehead renderas="sect3" id="perl-test-differences"
xreflabel="Test::Differences-&Test-Differences-version;">
Test::Differences-&Test-Differences-version;</bridgehead>
<indexterm zone="perl-modules perl-test-differences">
<primary sortas="a-Test-Differences">Test::Differences</primary>
</indexterm>
<para>Test::Differences - Test strings and data structures and show
differences if not ok. This module and its dependency modules use the
standard <xref linkend="perl-standard-install"/>.</para>
<!-- Test-Differences -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Test-Differences-download-http;">Test::Differences-&Test-Differences-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Test-Differences-download-http;
MD5 sum: &Test-Differences-md5sum;</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/N/NE/NEILB/Text-Diff-1.45.tar.gz">Text::Diff (for the test suite)</ulink>
(https://cpan.metacpan.org/authors/id/N/NE/NEILB/Text-Diff-1.45.tar.gz)</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/T/TY/TYEMQ/Algorithm-Diff-1.1903.tar.gz">Algorithm::Diff</ulink>
(https://cpan.metacpan.org/authors/id/T/TY/TYEMQ/Algorithm-Diff-1.1903.tar.gz)</literallayout>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para><xref linkend="perl-capture-tiny"/></para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Test::Exception is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-test-exception"
xreflabel="Test::Exception">
Test::Exception</bridgehead>
<indexterm zone="perl-modules perl-test-exception">
<primary sortas="a-Test-Exception">Test::Exception</primary>
</indexterm>
<para>Test::Exception is used to test exception-based code.
This module itself uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Test-Exception -->
&lfs83_checked;
<itemizedlist>
<listitem> <literallayout><ulink url="https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Test-Exception-0.43.tar.gz">Test::Exception</ulink>
(https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Test-Exception-0.43.tar.gz)</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Sub-Uplevel-0.2800.tar.gz">Sub::Uplevel</ulink>
(ttps://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Sub-Uplevel-0.2800.tar.gz)</literallayout>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Test::Fatal is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-test-fatal"
xreflabel="Test::Fatal">
Test::Fatal</bridgehead>
<indexterm zone="perl-modules perl-test-fatal">
<primary sortas="a-Test-Fatal">Test::Fatal</primary>
</indexterm>
<para>The Test::Fatal module provides simple helpers for testing
code which throws exceptions. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Test-Fatal -->
&lfs83_checked;
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Test-Fatal-0.014.tar.gz">Test::Fatal</ulink>
(https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Test-Fatal-0.014.tar.gz)</literallayout>
<itemizedlist>
<listitem>
<para>
<xref linkend="perl-try-tiny"/>
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Test::Needs is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-test-needs"
xreflabel="Test::Needs">
Test::Needs</bridgehead>
<indexterm zone="perl-modules perl-test-needs">
<primary sortas="a-Test-Needs">Test::Needs</primary>
</indexterm>
<para>The Test::Needs module skips tests when a module is not available.</para>
<!-- Test-Needs -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<literallayout><ulink url="https://cpan.metacpan.org/authors/id/H/HA/HAARG/Test-Needs-0.002005.tar.gz">Test::Needs</ulink>
(https://cpan.metacpan.org/authors/id/H/HA/HAARG/Test-Needs-0.002005.tar.gz)</literallayout>
</para>
</listitem>
</itemizedlist>
<!-- Test::Requires is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-test-requires"
xreflabel="Test::Requires">
Test::Requires</bridgehead>
<indexterm zone="perl-modules perl-test-requires">
<primary sortas="a-Test-Requires">Test::Requires</primary>
</indexterm>
<para>The Test::Requires module checks if another (optional) module
can be loaded, and if not it skips all the current tests. This
module uses the standard <xref linkend="perl-standard-install"/>.</para>
<!-- Test-Requires -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<literallayout><ulink url="https://cpan.metacpan.org/authors/id/T/TO/TOKUHIROM/Test-Requires-0.10.tar.gz">Test::Requires</ulink>
(https://cpan.metacpan.org/authors/id/T/TO/TOKUHIROM/Test-Requires-0.10.tar.gz)</literallayout>
</para>
</listitem>
</itemizedlist>
<!-- Test::Warnings is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-test-warnings"
xreflabel="Test::Warnings">
Test::Warnings</bridgehead>
<indexterm zone="perl-modules perl-test-warnings">
<primary sortas="a-Test-Warnings">Test::Warnings</primary>
</indexterm>
<para>The Test::Warnings module tests for warnings
and the lack of them. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Test-Warnings -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<literallayout><ulink url="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Test-Warnings-0.026.tar.gz">Test::Warnings</ulink>
(https://cpan.metacpan.org/authors/id/E/ET/ETHER/Test-Warnings-0.026.tar.gz)</literallayout>
</para>
</listitem>
</itemizedlist>
<!-- Text::BibTeX -->
<bridgehead renderas="sect3" id="perl-text-bibtex"
xreflabel="Text::BibTeX-&Text-BibTeX-version;">
Text::BibTeX-&Text-BibTeX-version;</bridgehead>
<indexterm zone="perl-modules perl-text-bibtex">
<primary sortas="a-Text-BibTeX">Text::BibTex</primary>
</indexterm>
<para>Text::BibTeX provides an interface to read and parse
<application>BibTeX</application> files. This module uses the
<xref linkend="perl-build-install"/>, but except where noted,
its dependencies are installed using the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Text-BibTeX -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Text-BibTeX-download-http;">Text::BibTeX-&Text-BibTeX-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Text-BibTeX-download-http;
MD5 sum: &Text-BibTeX-md5sum;</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/R/RE/REHSACK/Config-AutoConf-0.317.tar.gz">Config::AutoConf</ulink>
(https://cpan.metacpan.org/authors/id/R/RE/REHSACK/Config-AutoConf-0.317.tar.gz)</literallayout>
<itemizedlist>
<listitem>
<para><xref linkend="perl-capture-tiny"/></para>
</listitem>
</itemizedlist>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/A/AM/AMBS/ExtUtils-LibBuilder-0.08.tar.gz">ExtUtils-LibBuilder</ulink>
(https://cpan.metacpan.org/authors/id/A/AM/AMBS/ExtUtils-LibBuilder-0.08.tar.gz)
this uses the <xref linkend="perl-build-install"/></literallayout>
<itemizedlist>
<listitem>
<para>
<xref linkend="perl-module-build"/>
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Text::CSV -->
<bridgehead renderas="sect3" id="perl-text-csv"
xreflabel="Text::CSV-&Text-CSV-version;">
Text::CSV-&Text-CSV-version;</bridgehead>
<indexterm zone="perl-modules perl-text-csv">
<primary sortas="a-Text-CSV">Text::CSV</primary>
</indexterm>
<para>Text::CSV is a comma-separated values manipulator, using XS
(eXternal Subroutine - for subroutines written in C or C++) or
pure perl. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Text-CSV -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Text-CSV-download-http;">Text::CSV-&Text-CSV-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Text-CSV-download-http;
MD5 sum: &Text-CSV-md5sum;</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/H/HM/HMBRAND/Text-CSV_XS-1.36.tgz">Text::CSV_XS</ulink>
(https://cpan.metacpan.org/authors/id/H/HM/HMBRAND/Text-CSV_XS-1.36.tgz)</literallayout>
<para>
This is <emphasis>Recommended</emphasis> by Text-CSV but
<emphasis>Required</emphasis> for <xref role="nodep" linkend="biber"/>.
</para>
<!-- <note> (this was valid up to 1.31, 1.33 extracts fine as .tgz, keep this
commented until there has been as series of ok .tag releases)
<para>
GNU tar dislikes <filename>Text-CSV_XS-1.26.tar.gz</filename>
and reports it does not look like a tar file : decompress it
with <command>gunzip</command> before extracting it.
</para>
</note> -->
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- Text::Glob is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-text-glob"
xreflabel="Text::Glob">
Text::Glob</bridgehead>
<indexterm zone="perl-modules perl-text-glob">
<primary sortas="a-Text-Glob">Text::Glob</primary>
</indexterm>
<para>Text::Glob implements glob(3) style matching that can be used to match
against text, rather than fetching names from a filesystem. It uses the
standard <xref linkend="perl-standard-install"/>.</para>
<!-- Text-Glob -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<literallayout><ulink url="https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/Text-Glob-0.11.tar.gz">Text::Glob</ulink>
(https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/Text-Glob-0.11.tar.gz)</literallayout>
</para>
</listitem>
</itemizedlist>
<!-- Text::Roman -->
<bridgehead renderas="sect3" id="perl-text-roman"
xreflabel="Text::Roman-&Text-Roman-version;">
Text::Roman-&Text-Roman-version;</bridgehead>
<indexterm zone="perl-modules perl-text-roman">
<primary sortas="a-Text-Roman">Text::Roman</primary>
</indexterm>
<para>
Text::Roman allows conversion between Roman and Arabic algorisms (number
systems, e.g. MCMXLV and 1945). This module uses the standard
<xref linkend="perl-standard-install"/>.
</para>
<!-- Text-Roman -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Text-Roman-download-http;">Text::Roman-&Text-Roman-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Text-Roman-download-http;
MD5 sum: &Text-Roman-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- Try::Tiny is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-try-tiny"
xreflabel="Try::Tiny">
Try::Tiny</bridgehead>
<indexterm zone="perl-modules perl-try-tiny">
<primary sortas="a-Try-Tiny">Try::Tiny</primary>
</indexterm>
<para>The Try::Tiny module provides minimal try/catch with
proper preservation of $0. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Try-Tiny -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<literallayout><ulink url="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Try-Tiny-0.30.tar.gz">Try::Tiny</ulink>
(https://cpan.metacpan.org/authors/id/E/ET/ETHER/Try-Tiny-0.30.tar.gz)</literallayout>
</para>
</listitem>
</itemizedlist>
<!-- Unicode::Collate -->
<bridgehead renderas="sect3" id="perl-unicode-collate"
xreflabel="Unicode::Collate-&Unicode-Collate-version;">
Unicode::Collate-&Unicode-Collate-version;</bridgehead>
<indexterm zone="perl-modules perl-unicode-collate">
<primary sortas="a-Unicode-Collate">Unicode::Collate</primary>
</indexterm>
<para>
Unicode::Collate provides a Unicode collation algorithm.
This module uses the standard <xref linkend="perl-standard-install"/>.
</para>
<!-- Unicode-Collate -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Unicode-Collate-download-http;">Unicode::Collate-&Unicode-Collate-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Unicode-Collate-download-http;
MD5 sum: &Unicode-Collate-md5sum;</literallayout>
</listitem>
</itemizedlist>
<!-- Unicode::LineBreak -->
<bridgehead renderas="sect3" id="perl-unicode-linebreak"
xreflabel="Unicode::LineBreak-&Unicode-LineBreak-version;">
Unicode::LineBreak-&Unicode-LineBreak-version;</bridgehead>
<indexterm zone="perl-modules perl-unicode-linebreak">
<primary sortas="a-Unicode-LineBreak">Unicode::LineBreak</primary>
</indexterm>
<para>Unicode::LineBreak provides a UAX #14 Unicode Line Breaking Algorithm.
This module and its dependencies use the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- Unicode-LineBreak -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&Unicode-LineBreak-download-http;">Unicode::LineBreak-&Unicode-LineBreak-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&Unicode-LineBreak-download-http;
MD5 sum: &Unicode-LineBreak-md5sum;</literallayout>
<itemizedlist>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/N/NE/NEZUMI/MIME-Charset-1.012.2.tar.gz">MIME::Charset</ulink>
(https://cpan.metacpan.org/authors/id/N/NE/NEZUMI/MIME-Charset-1.012.2.tar.gz)
When scripting, pipe the <command>perl Makefile.PL</command> command through <command>yes "" |</command>, since some user input is sought</literallayout>
</listitem>
<listitem>
<para>
<xref linkend="wget"/> (to download two files from unicode.org
in the test suite)
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- URI -->
<bridgehead renderas="sect3" id="perl-uri"
xreflabel="URI-&URI-version;">
URI-&URI-version;</bridgehead>
<indexterm zone="perl-modules perl-uri">
<primary sortas="a-URI">URI</primary>
</indexterm>
<para>
This module implements the URI class. Objects of this class represent
"Uniform Resource Identifier references" as specified in RFC 2396 (and
updated by RFC 2732). A Uniform Resource Identifier is a compact string of
characters that identifies an abstract or physical resource. A Uniform
Resource Identifier can be further classified as either a Uniform Resource
Locator (URL) or a Uniform Resource Name (URN). The distinction between
URL and URN does not matter to the URI class interface. A "URI-reference"
is a URI that may have additional information attached in the form of a
fragment identifier. This module uses the standard
<xref linkend="perl-standard-install"/>.
</para>
<!-- URI -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&URI-download-http;">URI-&URI-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&URI-download-http;
MD5 sum: &URI-md5sum;</literallayout>
<itemizedlist>
<listitem>
<para>
<xref linkend="perl-test-needs"/> (for the test suite)
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- XML::LibXML is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-xml-libxml"
xreflabel="XML::LibXML">
XML::LibXML</bridgehead>
<indexterm zone="perl-modules perl-xml-libxml">
<primary sortas="a-XML-LibXML">XML::LibXML</primary>
</indexterm>
<para>The XML::LibXML is a perl binding for <xref linkend="libxml2"/>.
This module uses the standard <xref linkend="perl-standard-install"/>.
</para>
<para>Upstream blacklists the current version of <xref linkend="libxml2"/>
on the grounds of "schema regression" and the build will warn that the
version of libxml2 is incompatible, but it appears to work.</para>
<!-- XML-LibXML -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<literallayout><ulink url="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/XML-LibXML-2.0132.tar.gz">XML::LibXML</ulink>
(https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/XML-LibXML-2.0132.tar.gz">XML::LibXML)</literallayout>
</para>
<itemizedlist>
<listitem>
<para><xref linkend="perl-xml-sax"/></para>
</listitem>
<listitem>
<para><xref linkend="libxml2"/></para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- XML::LibXML::Simple -->
<bridgehead renderas="sect3" id="perl-xml-libxml-simple"
xreflabel="XML::LibXML::Simple-&XML-LibXML-Simple-version;">
XML::LibXML::Simple-&XML-LibXML-Simple-version;</bridgehead>
<indexterm zone="perl-modules perl-xml-libxml-simple">
<primary sortas="a-XML-LibXML-Simple">XML::LibXML::Simple</primary>
</indexterm>
<para>The XML::LibXML::Simple module is a rewrite of XML::Simple to use the
XML::LibXML parser for XML structures,instead of the plain
<application>Perl</application> or SAX parsers.
This module and all dependency modules use the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- XML-LibXML-Simple -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&XML-LibXML-Simple-download-http;">XML::LibXML::Simple-&XML-LibXML-Simple-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&XML-LibXML-Simple-download-http;
MD5 sum: &XML-LibXML-Simple-md5sum;</literallayout>
<itemizedlist>
<listitem>
<para>
<xref linkend="perl-xml-libxml"/>
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- XML::LibXSLT -->
<bridgehead renderas="sect3" id="perl-xml-libxslt"
xreflabel="XML::LibXSLT-&XML-LibXSLT-version;">
XML::LibXSLT-&XML-LibXSLT-version;</bridgehead>
<indexterm zone="perl-modules perl-xml-libxslt">
<primary sortas="a-XML-LibXSLT">XML::LibXSLT</primary>
</indexterm>
<para>The XML::LibXSLT module provides an interface to
<application>libxslt</application>. This module uses the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- XML-LibXSLT -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&XML-LibXSLT-download-http;">XML::LibXSLT-&XML-LibXSLT-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&XML-LibXSLT-download-http;
MD5 sum: &XML-LibXSLT-md5sum;</literallayout>
<itemizedlist>
<listitem>
<para>
<xref linkend="perl-xml-libxml"/>
</para>
</listitem>
<listitem>
<para>
<xref linkend="libxslt"/>
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- XML::SAX is a dependency of multiple modules on this page
but it is not linked from other pages, so only give minimal details -->
<bridgehead renderas="sect3" id="perl-xml-sax"
xreflabel="XML::SAX">
XML::SAX</bridgehead>
<indexterm zone="perl-modules perl-xml-sax">
<primary sortas="a-XML-SAX">XML::SAX</primary>
</indexterm>
<para>XML::SAX provides a simple API for XML.
This module uses the standard <xref linkend="perl-standard-install"/>.
</para>
<para>Note: this module does not support parallel builds.</para>
<!-- XML-SAX -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<literallayout><ulink url="https://cpan.metacpan.org/authors/id/G/GR/GRANTM/XML-SAX-1.00.tar.gz">XML::SAX</ulink>
(https://cpan.metacpan.org/authors/id/G/GR/GRANTM/XML-SAX-1.00.tar.gz)</literallayout>
</para>
<itemizedlist>
<listitem>
<para><xref linkend="libxml2"/></para>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-1.12.tar.gz">XML::NamespaceSupport</ulink>
(https://cpan.metacpan.org/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-1.12.tar.gz)</literallayout>
</listitem>
<listitem><literallayout><ulink url="https://cpan.metacpan.org/authors/id/G/GR/GRANTM/XML-SAX-Base-1.09.tar.gz">XML::SAX::Base</ulink>
(https://cpan.metacpan.org/authors/id/G/GR/GRANTM/XML-SAX-Base-1.09.tar.gz)</literallayout>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- XML::Simple -->
<bridgehead renderas="sect3" id="perl-xml-simple"
xreflabel="XML::Simple-&XML-Simple-version;">
XML::Simple-&XML-Simple-version;</bridgehead>
<indexterm zone="perl-modules perl-xml-simple">
<primary sortas="a-XML-Simple">XML::Simple</primary>
</indexterm>
<para>The XML::Simple module is a <application>Perl</application> extension
that provides an easy API to read and write XML (especially config files).
This module and all dependency modules use the standard
<xref linkend="perl-standard-install"/>.</para>
<!-- XML-Simple -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&XML-Simple-download-http;">XML::Simple-&XML-Simple-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&XML-Simple-download-http;
MD5 sum: &XML-Simple-md5sum;</literallayout>
<itemizedlist>
<listitem>
<para><xref linkend="perl-xml-sax"/> (optional)</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<!-- XML::Writer -->
<bridgehead renderas="sect3" id="perl-xml-writer"
xreflabel="XML::Writer-&XML-Writer-version;">
XML::Writer-&XML-Writer-version;</bridgehead>
<indexterm zone="perl-modules perl-xml-writer">
<primary sortas="a-XML-Writer">XML::Writer</primary>
</indexterm>
<para>XML::Writer provides a <application>Perl</application>
extension for writing XML documents. This
module uses the standard <xref linkend="perl-standard-install"/>.</para>
<!-- XML-Writer -->
&lfs83_checked;
<itemizedlist>
<listitem>
<para>
<ulink url="&XML-Writer-download-http;">XML::Writer-&XML-Writer-version;</ulink>
</para>
</listitem>
<listitem>
<literallayout>&XML-Writer-download-http;
MD5 sum: &XML-Writer-md5sum;</literallayout>
</listitem>
</itemizedlist>
</sect2>
<sect2 role="installation" id="perl-standard-install"
xreflabel="build and installation instructions">
<title>Standard Installation of Perl Modules</title>
<para>Install <application>Perl</application> modules by running the
following commands:</para>
<para>For <xref linkend="perl-lwp-protocol-https"/>, first apply the required
patch with:</para>
<screen><userinput>patch -Np1 -i ../LWP-Protocol-https-&LWP-Protocol-https-version;-system_certs-1.patch</userinput></screen>
<para>Then, or for all other modules using the standard installation, proceed
with:</para>
<screen><userinput>perl Makefile.PL &amp;&amp;
make &amp;&amp;
make test</userinput></screen>
<note>
<para>If the module is described as using the <emphasis>unsafe</emphasis>
variant of the Standard Installation, and you are using
<application>perl-5.26.0</application> or later, (the use of the current
directory in <literal>@INC</literal> was removed for security reasons)
you should change the perl invocation to:</para>
<screen><userinput>PERL_USE_UNSAFE_INC=1 &amp;&amp;</userinput></screen>
<para>If, however, you are using the Auto Installation described below,
that environment variable will be set whenever the <command>cpan</command>
shell <command>install</command> is used.</para>
</note>
<para>Now, as the <systemitem class="username">root</systemitem> user:</para>
<screen role="root"><userinput>make install</userinput></screen>
<note>
<para>When reinstalling a <application>Perl</application> module,
sometimes older versions of the module being reinstalled are in other
directories specified in <parameter>@INC</parameter>. To delete all
other versions of the module being reinstalled (not simply older ones)
set the <varname>UNINST</varname> variable:</para>
<screen><userinput>make install UNINST=1</userinput></screen>
</note>
</sect2>
<sect2 role="installation" id="perl-build-install"
xreflabel="instructions for packages using Build.PL">
<title>Installation of Perl Modules which use Build.PL</title>
<para>Install <application>Perl</application> modules which use
Build.PL by running the following commands:</para>
<screen><userinput>perl Build.PL &amp;&amp;
./Build &amp;&amp;
./Build test</userinput></screen>
<para>Now, as the <systemitem class="username">root</systemitem> user:</para>
<screen role="root"><userinput>./Build install</userinput></screen>
<!-- following not tested
<note>
<para>When reinstalling a <application>Perl</application> module,
sometimes older versions of the module being reinstalled are in other
directories specified in <parameter>@INC</parameter>. To delete all
other versions of the module being reinstalled (not simply older ones)
set the <varname>UNINST</varname> variable:</para>
<screen><userinput>./Build install UNINST=1</userinput></screen>
</note> -->
</sect2>
<sect2 role="installation" id="perl-auto-install"
xreflabel="alternate auto installation instructions">
<title>(Alternate) Auto Installation of Perl Modules.</title>
<para>There is an alternate way of installing the modules using the
<command>cpan</command> shell <command>install</command> command. The
command automatically downloads the source from the CPAN archive, extracts
it, runs the compilation, testing and installation commands mentioned
above, and removes the build source tree. You may still need to install
dependent library packages before running the automated installation
method.</para>
<para>The first time you run <command>cpan</command>, you'll be prompted
to enter some information regarding download locations and methods. This
information is retained in files located in
<filename class='directory'>~/.cpan</filename>. Start the
<command>cpan</command> shell by issuing '<command>cpan</command>' as the
<systemitem class="username">root</systemitem> user. Any module may now be
installed from the
<emphasis role='underlined'><prompt>cpan&gt;&nbsp;</prompt></emphasis>
prompt with the command:</para>
<screen role="root"><userinput>install <replaceable>&lt;Module::Name&gt;</replaceable></userinput></screen>
<para>For additional commands and help, issue '<command>help</command>'
from the
<emphasis role='underlined'><prompt>cpan&gt;&nbsp;</prompt></emphasis>
prompt.</para>
<para>Alternatively, for scripted or non-interactive installations, use the
following syntax as the
<systemitem class="username">root</systemitem> user to install one or more
modules:</para>
<screen role="root"><userinput>cpan -i <replaceable>&lt;Module1::Name&gt; &lt;Module2::Name&gt;</replaceable></userinput></screen>
<para>Review the <filename>cpan.1</filename> man page for additional
parameters you can pass to <command>cpan</command> on the command
line.</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<para>
Most of these modules only install into the perl directories, but a
few will also install programs (mostly, perl scripts), or even a library,
into <filename class="directory">/usr</filename>
</para>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<seglistitem>
<seg> <!-- Use emphasis to highlight the relevant module name.
Our setup actually uses italic to do this. -->
<emphasis>Archive::Zip:</emphasis> crc32
<emphasis>File::Find::Rule:</emphasis> findrule
<emphasis>libwww-perl:</emphasis> lwp-download, lwp-dump, lwp-mirror, lwp-request
<emphasis>Lingua::Translit:</emphasis> translit
<emphasis>Log::Log4perl:</emphasis> l4p-tmpl
<emphasis>Module::Build</emphasis> config_data
<emphasis>Parse::Yapp</emphasis> yapp
<!--<emphasis>Test::Pod::Coverage:</emphasis> pod_cover-->
<emphasis>Text::BibTeX:</emphasis> biblex, bibparse, dumpnames
</seg>
<seg>
<emphasis>Text::BibTeX:</emphasis> libbtparse.so
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="crc32">
<term><command>crc32</command></term>
<listitem>
<para>computes and prints to stdout the CRC-32 values of the
given files.</para>
<indexterm zone="perl-modules crc32">
<primary sortas="b-crc32">crc32</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="findrule">
<term><command>findrule</command></term>
<listitem>
<para>is a command line wrapper to File:Find:Rule.</para>
<indexterm zone="perl-modules findrule">
<primary sortas="b-findrule">findrule</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="lwp-download">
<term><command>lwp-download</command></term>
<listitem>
<para>is a script to fetch a large file from the web.</para>
<indexterm zone="perl-modules lwp-download">
<primary sortas="b-lwp-download">lwp-download</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="lwp-dump">
<term><command>lwp-dump</command></term>
<listitem>
<para>is used to see what headers and content is returned for a URL.</para>
<indexterm zone="perl-modules lwp-dump">
<primary sortas="b-lwp-dump">lwp-dump</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="lwp-mirror">
<term><command>lwp-mirror</command></term>
<listitem>
<para>is a simple mirror utility.</para>
<indexterm zone="perl-modules lwp-mirror">
<primary sortas="b-lwp-mirror">lwp-mirror</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="lwp-request">
<term><command>lwp-request</command></term>
<listitem>
<para>is a simple command line user agent.</para>
<indexterm zone="perl-modules lwp-request">
<primary sortas="b-lwp-request">lwp-request</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="translit">
<term><command>translit</command></term>
<listitem>
<para>transliterates text between writing systems using
various standards.</para>
<indexterm zone="perl-modules translit">
<primary sortas="b-translit">translit</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="l4p-templ">
<term><command>l4p-templ</command></term>
<listitem>
<para>prints out the text of a template Log4perl configuration for
starting a new Log4perl configuration file.</para>
<indexterm zone="perl-modules l4p-templ">
<primary sortas="b-l4p-templ">l4p-templ</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="config_data">
<term><command>config_data</command></term>
<listitem>
<para>is used to query or change the configuration of perl modules.
</para>
<indexterm zone="perl-modules config_data">
<primary sortas="b-config_data">config_data</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="yapp">
<term><command>yapp</command></term>
<listitem>
<para>is a frontend to the Parse::Yapp module, which lets you create
a Perl OO parser from an input grammar file.</para>
<indexterm zone="perl-modules yapp">
<primary sortas="b-yapp">yapp</primary>
</indexterm>
</listitem>
</varlistentry>
<!--<varlistentry id="pod_cover">
<term><command>pod_cover</command></term>
<listitem>
<para>is used to get a coverage analysis of the embedded documentation
in a perl module.</para>
<indexterm zone="perl-modules pod_cover">
<primary sortas="b-pod_cover">pod_cover</primary>
</indexterm>
</listitem>
</varlistentry>-->
<varlistentry id="biblex">
<term><command>biblex</command></term>
<listitem>
<para>performs lexical analysis on a BibTeX file.</para>
<indexterm zone="perl-modules biblex">
<primary sortas="b-biblex">biblex</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="bibparse">
<term><command>bibparse</command></term>
<listitem>
<para>parses a series of BibTeX files with command line options to
control the string post-processing behaviour.</para>
<indexterm zone="perl-modules bibparse">
<primary sortas="b-bibparse">bibparse</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="dumpnames">
<term><command>dumpnames</command></term>
<listitem>
<para>parses a BibTeX file, splitting 'author' and 'editor' fields
into lists of names, and then dumps everything to stdout.</para>
<indexterm zone="perl-modules dumpnames">
<primary sortas="b-dumpnames">dumpnames</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libbtparse">
<term><filename class='libraryfile'>libbtparse.so</filename></term>
<listitem>
<para>is a library for parsing and processing BibTeX data files.</para>
<indexterm zone="perl-modules libbtparse">
<primary sortas="c-libbtparse">libbtparse.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>