The Perl module packages (also referred to as Distributions, because each can contain multiple modules) add useful objects to the Perl language. The packages listed on this page are required or recommended for other packages in the book. If they have dependent modules, those are either on this page or else on the next page (Perl Module Dependencies).
In many 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 PASS
.
For a few modules, the BLFS editors have determined that other modules still listed as prerequisites are not required, and omitted them.
Where an alphabetically-earlier dependency of the same module pulls in a dependency, it is not mentioned for the later dependencies of the same module. You should build the listed dependencies in order.
It is generally worth running the tests for perl modules, they often can show problems such as missing dependencies which are required to use the module. Here, the editors have attempted to separate those dependencies which are only required for running test suites, but they will not be mentioned for a module where one of its dependencies uses that module for its own test suite. That is to say, if you intend to run the test suites, please run them for each dependency of the module.
It is possible to automatically install the current versions of a module and all missing or too-old dependencies recommended by upstream using CPAN. See CPAN automated install of perl modules at the end of this page.
Most of these modules only install files below /usr/lib/perl5/site_perl/5.xx.y
and those will
not be documented. One or two install programs (mostly, perl
scripts), or a library, into /usr/bin/
or /usr/lib/
and these are documented.
The Archive::Zip module allows a Perl program to create, manipulate, read, and write Zip archive files.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/P/PH/PHRED/Archive-Zip-1.68.tar.gz
Download MD5 sum: a33993309322164867c99e04a4000ee3
UnZip-6.0 (with its patch)
This module allows you disable autovivification (the automatic creation and population of new arrays and hashes whenever undefined variables are dereferenced), and optionally throw a warning or an error when it would have occurred.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/V/VP/VPIT/autovivification-0.18.tar.gz
Download MD5 sum: 8dec994e1e7d368e055f21a5777385a0
The Business::ISBN module provides functions for working with International Standard Book Numbers.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/B/BD/BDFOY/Business-ISBN-3.008.tar.gz
Download MD5 sum: 6a602922a1902dd9915cac3e0c479dfc
The Business::ISMN module is for work with International Standard Music Numbers.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/B/BD/BDFOY/Business-ISMN-1.203.tar.gz
Download MD5 sum: 45edcba290b1a058ece76cbd090479b4
The Business::ISSN module is for work with International Standard Serial Numbers.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/B/BD/BDFOY/Business-ISSN-1.005.tar.gz
Download MD5 sum: f46bf5585d6c3aa9fb32127edb13151a
Class::Accessor generates accessors/mutators for your class.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/K/KA/KASEI/Class-Accessor-0.51.tar.gz
Download MD5 sum: 1f1e5990f87cad7659b292fed7dc0407
The Data::Compare module compares two perl data structures.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/D/DC/DCANTRELL/Data-Compare-1.29.tar.gz
Download MD5 sum: ce9cb42ba6af634f5ab51f13f37e2ddb
Data::Dump provides pretty printing of data structures.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/G/GA/GARU/Data-Dump-1.25.tar.gz
Download MD5 sum: 9bd7131ef0441e1e0e001bf85e9fae31
Data::Uniqid provides three simple routines for generating unique IDs.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/M/MW/MWX/Data-Uniqid-0.12.tar.gz
Download MD5 sum: 6bab3b5da09fedfdf60ce2629a7367db
DateTime::Calendar::Julian implements the Julian Calendar.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/W/WY/WYANT/DateTime-Calendar-Julian-0.107.tar.gz
Download MD5 sum: abd775d1d82f0f45d4fd6214cf7bbed8
DateTime::Format::Builder created DateTime parser classes and objects.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/D/DR/DROLSKY/DateTime-Format-Builder-0.83.tar.gz
Download MD5 sum: aa41917ca9ad69b3898728ce9c2fb477
Encode::EUCJPASCII provides an eucJP-open (Extended Unix Code, Japanese) mapping.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/N/NE/NEZUMI/Encode-EUCJPASCII-0.03.tar.gz
Download MD5 sum: 5daa65f55b7c2050bb0713d9e95f239d
The Encode::HanExtra module provides extra sets of Chinese Encodings which are not included in the core Encode module because of size issues.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/A/AU/AUDREYT/Encode-HanExtra-0.23.tar.gz
Download MD5 sum: e1d3bc32c1c8ee304235a06fbcd5d5a4
This module uses the 'unsafe' build and installation instructions
(In perl-5.26.0 the use of the
current directory in @INC
was
removed for security reasons and this module has not been
updated) :
PERL_USE_UNSAFE_INC=1 perl Makefile.PL && make && make test
Now, as the root
user:
make install
The Encode::JIS2K module provides JIS X 0212 (aka JIS 2000) Encodings.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/D/DA/DANKOGAI/Encode-JIS2K-0.03.tar.gz
Download MD5 sum: 60539471aa408a2b793cd45a6ce651db
File::Slurper is a simple, sane and efficient module to slurp a file.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/L/LE/LEONT/File-Slurper-0.014.tar.gz
Download MD5 sum: d43bc5f069035eff3b6b7c418b4cedc4
File::Which provides a portable implementation of the 'which' utility.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/P/PL/PLICEASE/File-Which-1.27.tar.gz
Download MD5 sum: d5c9154262b93398f0750ec364207639
The HTML::Parser distribution is a collection of modules that parse and extract information from HTML documents.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/O/OA/OALDERS/HTML-Parser-3.81.tar.gz
Download MD5 sum: b9f5dd3b14632f7a60541a2b61389c06
HTTP-Message-6.44 (its module HTTP::Headers is a run-time requirement for HTML::HeadParser from this distribution).
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 package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/O/OA/OALDERS/HTTP-Daemon-6.16.tar.gz
Download MD5 sum: 51425462790165aeafc2819a7359706f
Makefile.PL and running the tests will complain that
Module::Build::Tiny is missing, but that is only needed for
Build.PL
which is used if the
system lacks a C compiler.
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 package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/S/SU/SULLR/IO-Socket-SSL-2.083.tar.gz
Download MD5 sum: 673eaf709a034d4f65dce259bde02500
make-ca-1.12 and Net-SSLeay-1.92
URI-5.17 (to access international domain names)
IO::String - Emulate file interface for in-core strings.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/G/GA/GAAS/IO-String-1.08.tar.gz
Download MD5 sum: 250e5424f290299fc3d6b5d1e9da3835
IPC::Run3 is used to run a subprocess with input/output redirection.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/R/RJ/RJBS/IPC-Run3-0.048.tar.gz
Download MD5 sum: 5a8cec571c51a118b265cf6e24e55761
JSON provides a simple wrapper for JSON::XS-compatible modules with some additional features.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/I/IS/ISHIGAKI/JSON-4.10.tar.gz
Download MD5 sum: a709b32e194d0eb38f788cb49f422c4e
Lingua::Translit and its translit program transliterate text between writing systems.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/A/AL/ALINKE/Lingua-Translit-0.29.tar.gz
Download MD5 sum: 605a82f06b05fef4fc18bf069b1be511
The libwww-perl collection is a set of Perl modules which provides a simple and consistent application programming interface (API) 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.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/O/OA/OALDERS/libwww-perl-6.72.tar.gz
Download MD5 sum: ea683625d1c875c583ae8859602bac66
File-Listing-6.15, HTTP-CookieJar-0.014, HTTP-Cookies-6.10, HTTP-Daemon-6.16, HTTP-Negotiate-6.01, HTML-Parser-3.81, Net-HTTP-6.23, Try-Tiny-0.31 and WWW-RobotRules-6.02
Test-Fatal-0.017, Test-Needs-0.002010 and Test-RequiresInternet-0.05
This module uses the standard build and installation instructions:
perl Makefile.PL && make && make test
Now, as the root
user:
make install
After installing this package, if you want HTTPS protocol support install LWP-Protocol-https-6.11.
The List::Allutils module combines List::Util and List::MoreUtils in one bite-sized package.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/D/DR/DROLSKY/List-AllUtils-0.19.tar.gz
Download MD5 sum: 86469b1f6819ba181a8471eb932965f2
List::MoreUtils provides the stuff missing in List::Util.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/R/RE/REHSACK/List-MoreUtils-0.430.tar.gz
Download MD5 sum: daccd6310021231b827dcc943ff1c6b7
Log::Log4perl provides a Log4j implementation for perl.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/E/ET/ETJ/Log-Log4perl-1.57.tar.gz
Download MD5 sum: acbe29cbaf03f4478a13579a275b0011
LWP::Protocol::https provides https support for LWP::UserAgent (i.e. libwww-perl-6.72). Once the module is installed LWP is able to access sites using HTTP over SSL/TLS.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/O/OA/OALDERS/LWP-Protocol-https-6.11.tar.gz
Download MD5 sum: 6615a250c8963a2333ea6d0fbbec306b
IO-Socket-SSL-2.083, libwww-perl-6.72 and make-ca-1.12 with /etc/pki/tls/certs/ca-bundle.crt
.
Module::Build allows perl modules to be built without a make command being present.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://cpan.metacpan.org/authors/id/L/LE/LEONT/Module-Build-0.4232.tar.gz
Download MD5 sum: 144885f1cbaf9420017bbed696ec6b83
Net::DNS is a DNS resolver implemented in Perl. It can be used to perform nearly any type of DNS query from a Perl script.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/N/NL/NLNETLABS/Net-DNS-1.39.tar.gz
Download MD5 sum: 4a20cb266f1f75d97b2d535655d211db
Parse::RecDescent incrementally generates top-down recursive-descent text parsers from simple yacc-like grammar specifications.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/J/JT/JTBRAUN/Parse-RecDescent-1.967015.tar.gz
Download MD5 sum: 7a36d45d62a9b68603edcdbd276006cc
Parse::Yapp is a Perl extension for generating and using LALR parsers.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/W/WB/WBRASWELL/Parse-Yapp-1.21.tar.gz
Download MD5 sum: 69584d5b0f0304bb2a23cffcd982c5de
PerlIO::utf8_strict provides a fast and correct UTF-8 PerlIO layer. Unlike Perl's default :utf8 layer it checks the input for correctness.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/L/LE/LEONT/PerlIO-utf8_strict-0.010.tar.gz
Download MD5 sum: d90ca967f66e05ad9221c79060868346
Regexp::Common provides commonly requested regular expressions.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/A/AB/ABIGAIL/Regexp-Common-2017060201.tar.gz
Download MD5 sum: b1bb40759b84154990f36a160160fb94
The SGMLSpm module is a Perl library used for parsing the output from James Clark's SGMLS and NSGMLS parsers.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/R/RA/RAAB/SGMLSpm-1.1.tar.gz
Download MD5 sum: 746c74ae969992cedb1a2879b4168090
Before beginning the build, issue the following command to prevent an error:
chmod -v 644 MYMETA.yml
This module uses the standard build and installation instructions:
perl Makefile.PL && make && make test
Now, as the root
user:
make install
After the package has been installed, run the following command
as the root
user:
ln -sv sgmlspl.pl /usr/bin/sgmlspl
is an SGML processor |
|
is a symbolic link used during the install of DocBook-utils-0.6.14 |
Sort::Key provides a set of functions to sort lists of values by some calculated key value.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/S/SA/SALVA/Sort-Key-1.33.tar.gz
Download MD5 sum: a37ab0da0cfdc26e57b4c79e39f6d98f
Test::Command tests the exit status, STDOUT, or STDERR, of an external command.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/D/DA/DANBOO/Test-Command-0.11.tar.gz
Download MD5 sum: 9ab83c4695961dbe92cd86efe08f0634
Test::Differences tests strings and data structures and shows the differences if they do not match.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/D/DC/DCANTRELL/Test-Differences-0.70.tar.gz
Download MD5 sum: 1afd5ddab3d70575bdff206edacc4425
Text::BibTeX provides an interface to read and parse BibTeX files.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/A/AM/AMBS/Text-BibTeX-0.89.tar.gz
Download MD5 sum: 67fa6d9c03c659627d9fd58bb380c1fe
This module is built using Build.PL
:
perl Build.PL && ./Build && ./Build test
Now, as the root
user:
./Build install
performs lexical analysis on a BibTeX file |
|
parses a series of BibTeX files with command line options to control the string post-processing behavior |
|
parses a BibTeX file, splitting 'author' and 'editor' fields into lists of names, and then dumps everything to stdout |
|
is a library for parsing and processing BibTeX data files |
Text::CSV is a comma-separated values manipulator, using XS (eXternal Subroutine - for subroutines written in C or C++) or pure perl.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/I/IS/ISHIGAKI/Text-CSV-2.03.tar.gz
Download MD5 sum: 4ee40e2404a1cf1099f5e7d94badfbea
Text-CSV_XS-1.51 (required by biber-2.19)
Text::Roman allows conversion between Roman and Arabic algorisms (number systems, e.g. MCMXLV and 1945).
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/S/SY/SYP/Text-Roman-3.5.tar.gz
Download MD5 sum: 1f6b09c0cc1f4425b565ff787a39fd83
Unicode::Collate provides a Unicode collation algorithm.
This is a core module. If you are using perl-5.28.0 or later, its version is good enough for biber-2.19 and you do not need to reinstall this module.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/S/SA/SADAHIRO/Unicode-Collate-1.31.tar.gz
Download MD5 sum: ee4d960d057c5e5b02ebb49d0286db8f
Unicode::LineBreak provides a UAX #14 Unicode Line Breaking Algorithm.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/N/NE/NEZUMI/Unicode-LineBreak-2019.001.tar.gz
Download MD5 sum: 003d6da7a13700e069afed9238c864b9
MIME-Charset-1.013.1, also Wget-1.21.4 (to download two files from unicode.org in the test suite)
libthai (to break Thai words into segments)
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 package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/O/OA/OALDERS/URI-5.17.tar.gz
Download MD5 sum: 63675c429cfb1df73d7d21a9302e1000
Test-Fatal-0.017, Test-Needs-0.002010, and Test-Warnings-0.031
The XML::LibXML::Simple module is a rewrite of XML::Simple to use the XML::LibXML parser for XML structures, instead of the plain Perl or SAX parsers.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/M/MA/MARKOV/XML-LibXML-Simple-1.01.tar.gz
Download MD5 sum: faad5ed26cd83998f6514be199c56c38
XML-LibXSLT provides an interface to libxslt-1.1.38
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/S/SH/SHLOMIF/XML-LibXSLT-2.002001.tar.gz
Download MD5 sum: b47ac3a69b58fa43386c4f39be5d7bd5
XML::Simple provides an easy API to read and write XML (especially config files). It is deprecated and its use is discouraged.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/G/GR/GRANTM/XML-Simple-2.25.tar.gz
Download MD5 sum: bb841dce889a26c89a1c2739970e9fbc
XML-SAX-1.02 (for an alternative parser which will be used if available, otherwise XML::Parser which was installed in LFS will be used),
XML::Writer provides a Perl extension for writing XML documents.
This package is known to build and work properly using an LFS 12.0 platform.
Download (HTTP): https://www.cpan.org/authors/id/J/JO/JOSEPHW/XML-Writer-0.900.tar.gz
Download MD5 sum: 2457214360cefda445742a608dd6195e
There is an alternate way of installing the modules using the cpan shell install command. The command automatically downloads the latest source from the CPAN archive for the module and any missing prerequisite modules listed by upstream. Then for each module it extracts it, runs the compilation, the tests and installs it.
You still need to install any non-perl dependencies before
running the automated installation method. You may wish to clean
out the build/
directory after
installing, to free up the space. If any post-install actions
such as creating a symlink are mentioned, you should also do
those.
The first time you run cpan, you'll be prompted to
enter some information regarding download locations and methods.
This information is retained in files located in ~/.cpan
.
In particular, you may wish to configure it so that Sudo-1.9.14p3 is used for the installs, allowing you to build and test as a regular user. The following examples have not used that approach.
Start the cpan
shell by issuing 'cpan' as the root
user. Any module may now be installed
from the cpan>
prompt with the command:
install <Module::Name>
For additional commands and help, issue 'help' from the cpan>
prompt.
Alternatively, for scripted or non-interactive installations, use
the following syntax as the root
user to install one or more modules:
cpan -i <Module1::Name> <Module2::Name>
Review the cpan.1
man page for
additional parameters you can pass to cpan on the command line.