%general-entities; ]> $LastChangedBy$ $Date$ Perl Modules Perl modules Introduction to Perl Modules The Perl module packages add useful objects to the Perl 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. Archive::Zip-&Archive-Zip-version; Archive::Zip The Archive::Zip module allows a Perl program to create, manipulate, read, and write Zip archive files. This module uses the standard . Archive::Zip-&Archive-Zip-version; (MD5 sum: 40153666e7538b410e001aa8a810e702) Crypt::SSLeay-&Crypt-SSLeay-version; Crypt::SSLeay The Crypt::SSLeay module provides support for the HTTPS protocol under LWP, to allow an LWP::UserAgent object to perform GET, HEAD and POST requests. This module and the dependency modules use the standard . Crypt::SSLeay-&Crypt-SSLeay-version; (MD5 sum: 4812f14d6e8c71714a26c0ad733666dc) LWP::Protocol::https IO::Socket::SSL Net::SSLeay Mozilla::CA Try::Tiny Date::Manip-&Date-Manip-version; Date::Manip Date::Manip is a set of routines designed to make any common date/time manipulation easy to do. Operations such as comparing two times, calculating a time a given amount of time from another, or parsing international times are all easily done. From the very beginning, the main focus of Date::Manip has been to be able to do ANY desired date/time operation easily. This module and the dependency module use the standard . Date::Manip-&Date-Manip-version; (MD5 sum: 1fa6a10ee3efec82a9ba27dc918001bc) Test::Inter (optionally used for the tests) Finance::Quote-&Finance-Quote-version; Finance::Quote Finance::Quote is used to get stock quotes from various Internet sources, including Yahoo! Finance, Fidelity Investments, and the Australian Stock Exchange. There are two methods of using this module – a functional interface that is depreciated, and an object-orientated method that provides greater flexibility and stability. With the exception of straight currency exchange rates, all information is returned as a two-dimensional hash (or a reference to such a hash, if called in a scalar context). After you've installed the package, issue perldoc Finance::Quote for full information. Alternatively, you can issue perldoc lib/Finance/Quote.pm after unpacking the distribution tarball and changing into the top-level directory. This module and the dependency modules are installed using the standard . To run the regression test suite, you'll need a working Internet connection and then create a symbolic link to the test directory using the following command after unpacking the tarball and changing into the root directory of the source tree: ln -s test t Some tests will fail depending on certain conditions. See the INSTALL file for full details. Finance::Quote-&Finance-Quote-version; (MD5 sum: 339e8327a6c18d8194f6c5d1eea3bbde) Glib-&Glib-perl-version; Glib This module is a Perl wrapper around GLib that attempts to provide a perlish interface while remaining as true as possible to the underlying C API, so that any reference materials you can find on using GLib may still apply to using the libraries from Perl. This module and the dependency modules use the standard . Glib-&Glib-perl-version; (MD5 sum: 1d81a8aec5f7f1182a96cfaaf119d866) ExtUtils::PkgConfig ExtUtils::Depends HTML::Parser-&HTML-Parser-version; HTML::Parser 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 . HTML::Parser-&HTML-Parser-version; (MD5 sum: d22cc6468ce670a56034be907e4e7c54) HTML::Tagset (circular; howevever, it can be installed after HTML::Parser as it is only a run-time requirement for the included HTML::HeadParser module) HTML::TableExtract-&HTML-TableExtract-version; HTML::TableExtract HTML::TableExtract is a module that simplifies the extraction of the content contained in tables within HTML documents, extracted either as text or encoded element trees. Tables of note may be specified using Headers, Depth, Count, Attributes, or some combination of the four. This module and dependency modules use the standard . HTML::TableExtract-&HTML-TableExtract-version; (MD5sum: ac1b8fa092d53931a9f3fdbba330f5b0) HTML::Element::Extended HTML::Tree Test::Fatal (optionally used in the test suite) Try::Tiny libwww-perl-&LWP-version; (a.k.a. LWP) libwww-perl The libwww-perl (LWP) collection is a set of Perl 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 . The dependencies should be installed in the order listed below. Ensure you install the dependency chain for each module before installing the modules. libwww-perl-&LWP-version; (MD5 sum: 24acf2fe33b2295f048f8859e9665ee3) Encode::Locale HTML::Form HTTP::Message HTTP::Date IO::HTML LWP::MediaTypes HTTP::Cookies HTTP::Negotiate Net::HTTP WWW::RobotRules HTTP::Daemon File::Listing If you want the LWP installation to support the HTTPS protocol, install the following modules: LWP::Protocol::https IO::Socket::SSL Net::SSLeay Mozilla::CA Net::DNS-&Net-DNS-version; Net::DNS 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. The Net::DNS module and all its dependencies are installed using the standard . Net::DNS-&Net-DNS-version; (MD5 sum: 3c91eba5c44426e0abd84f0eb43c4158) Digest::HMAC IO::Socket::INET (required for IPv6 support) Socket6 SGMLSpm-&SGMLSpm-version; SGMLSpm The SGMLSpm module is a Perl library used for parsing the output from James Clark's SGMLS and NSGMLS parsers. This modules uses the standard . Before beginning the build, issue the following command to prevent an error: chmod -v 644 MYMETA.yml SGMLSpm-&SGMLSpm-version; (MD5 sum: 746c74ae969992cedb1a2879b4168090) URI-&URI-version; URI 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 . URI-&URI-version; (MD5 sum: 70f739be8ce28b8baba7c5920ffee4dc) XML::Parser-&XML-Parser-version; XML::Parser The XML::Parser module is a Perl extension interface to James Clark's XML parser, expat. The module uses the standard . XML::Parser-&XML-Parser-version; (MD5 sum: c320d2ffa459e6cdc6f9f59c1185855e) (optionally used in the test suite) XML::Simple-&XML-Simple-version; XML::Simple The XML::Simple module is a Perl extension that provides an easy API to read and write XML (especially config files). This module and all dependency modules use the standard . XML::Simple-&XML-Simple-version; (MD5 sum: 4d10964e123b76eca36678464daa63cd) XML::SAX::Expat XML::SAX XML::NamespaceSupport XML::SAX::Base XML::LibXML (recommended for faster parsing) Tie::IxHash (optionally used in the test suite) Standard Installation of Perl Modules Install Perl modules by running the following commands: perl Makefile.PL && make && make test Now, as the root user: make install When reinstalling a Perl module, sometimes older versions of the module being reinstalled are in other directories specified in @INC. To delete all other versions of the module being reinstalled (not simply older ones) set the UNINST variable: make install UNINST=1 (Alternate) Auto Installation of Perl Modules. There is an alternate way of installing the modules using the cpan shell install 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. 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. 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.