From 10a2ee5eb2c7193ffe448106010ca7be998a0671 Mon Sep 17 00:00:00 2001 From: Randy McMurchy Date: Thu, 14 Jul 2005 00:51:10 +0000 Subject: [PATCH] Complete overhaul of the Perl Modules; module version updates, new modules, additional dependencies, removal of obsolete modules, text rewrite and new layout git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@4719 af4574ff-66df-0310-9fd7-8a98e5e911e0 --- general.ent | 49 +- general/prog/perl-modules.xml | 893 ++++++++++++++++++++--------- introduction/welcome/changelog.xml | 7 + 3 files changed, 661 insertions(+), 288 deletions(-) diff --git a/general.ent b/general.ent index 973761ef41..f52ef9fb52 100644 --- a/general.ent +++ b/general.ent @@ -1,4 +1,4 @@ - + @@ -148,33 +148,52 @@ + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - + + + diff --git a/general/prog/perl-modules.xml b/general/prog/perl-modules.xml index 9bcb767daa..2187625b4d 100644 --- a/general/prog/perl-modules.xml +++ b/general/prog/perl-modules.xml @@ -25,13 +25,14 @@ 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. Most references to - Perl modules are in the form of Module, Module::SubName - or Module::Sub::Name, however occasionally you'll also see Module, Module-SubName - or Module-Sub-Name. Most references on this page are in the latter form, as these - are the official package names. + The Perl module packages add useful + objects to the Perl language. Modules utilized + by packages throughout BLFS are listed here, along with their dependencies. + Most references to Perl modules are in the form + of Module, Module::SubName or Module::Sub::Name, however occasionally + you'll also see Module, Module-SubName or Module-Sub-Name. Most references + on this page are in the latter form, as these are the official package + names. @@ -44,338 +45,326 @@ - The Module::Info Module + The Module::Info Module Module::Info One module in particular is shown first, as this module's usefulness - warrants installation, even though it won't be required by many other modules. - The Module::Info module can tell you if a particular module is included in, - or has been installed into your Perl installation. - Additionally, the module can tell you what versions are installed and what - dependencies are required for them. You can even use Module::Info to gather - dependencies of uninstalled modules. + warrants installation, even though it won't be required by many other + modules. The Module::Info module can tell you if a particular module is + included in, or has been installed into your Perl + installation. Additionally, Module::Info can tell you what versions are + installed and what dependencies are required for them. You can even use + Module::Info to gather dependencies of uninstalled modules. - Module-Info-&Module-Info-version; + Module-Info-&Module-Info-version; + () - Perl Module Packages + The Test::Pod Module + + + Test::Pod + + + Another useful module, and one which is (typically optionally) used + by other modules during the build process is the Test:Pod module. This + module is used to check the validity of POD (Plain Old Documentation) + files. The Test::Pod module is typically included by module authors to + automatically find and check all POD files in a module distribution. This + module and all the dependencies can be installed using the + . - - Gtk-Perl-&Gtk-Perl-version; - - Gtk::Perl - + + Test-Pod-&Test-Pod-version; + - - XML-Writer-&XML-Writer-version; - - XML::Writer - - - - - XML-Parser-&XML-Parser-version; - - XML::Parser + + Pod-Simple-&Pod-Simple-version; + + Pod::Simple + - - - - - - - - - - - - SGMLSpm-&SGMLSpm-version; - - SGMLSpm - - - - - Tk-&Perl-Tk-version; - - Perl::Tk - - - - and - - - - - - Net-DNS-&Net-DNS-version; - - Net::DNS - - - - - Digest-HMAC-&Digest-HMAC-version; - - Digest::HMAC - - - - - Digest-SHA1-&Digest-SHA1-version; - - Digest::SHA1 + + Pod-Escapes-&Pod-Escapes-version; + + Pod::Escapes + + + + + Test-Builder-Tester-&Test-Builder-Tester-version; + + + Test::Builder::Tester + + + + + The Module::Build Module + + + Module::Build + + + The Module::Build module is a system for building, testing, and + installing Perl modules. It is meant to be an + alternative to ExtUtils::MakeMaker. Developers may alter the behavior of + the module through subclassing in a much more straightforward way than with + MakeMaker. It also does not require a make command on + your system. Most of the Module::Build code is + pure-Perl and written in a very cross-platform + way. + + The Module::Build module (as well as any other + Perl module that uses the Module::Build build + system) uses . All the + dependencies can be installed using the + . + + + The Compress::Zlib module requires the following + sed after untarring the distribution tarball (before + any other build commands) to use the system-installed copy of + Zlib. + +sed -i -e "s|BUILD_ZLIB = True|BUILD_ZLIB = False|" \ + -e "s|INCLUDE = ./zlib-src|INCLUDE = /usr/include|" \ + -e "s|LIB = ./zlib-src|LIB = /usr/lib|" \ + config.in + + + - - LWP-&LWP-version; - - LWP - + + Module-Build-&Module-Build-version; + - - URI-&URI-version; - - URI + + Module-Signature-&Module-Signature-version; (optional) + + Module::Signature + - - Business-ISBN-&Business-ISBN-version; (Only used during the - test suite) - - Business::ISBN + + Digest-SHA-&Digest-SHA-version; + + Digest::SHA + + + + PAR-Dist-&PAR-Dist-version; + + PAR::Dist + + + + + + + + + + + ExtUtils-ParseXS-&ExtUtils-ParseXS-version; + + ExtUtils::ParseXS + + + + + + ExtUtils-CBuilder-&ExtUtils-CBuilder-version; + + ExtUtils::CBuilder + + + + + + + + Archive-Tar-&Archive-Tar-version; + + Archive::Tar + + + + + + IO-Zlib-&IO-Zlib-version; + + IO::Zlib + + - - Business-ISBN-Data-&Business-ISBN-Data-version; - - Business::ISBN::Data + + Compress-Zlib-&Compress-Zlib-version; + + Compress::Zlib - - - - Test-Pod-&Test-Pod-version; - - Test::Pod - - - - - Pod-Simple-&Pod-Simple-version; - - Pod::Simple - - - - - Pod-Escapes-&Pod-Escapes-version; - - Pod::Escapes - - - - - - - Test-Builder-Tester-&Test-Builder-Tester-version; - - - Test::Builder::Tester - - - - - - - Test-Prereq-&Test-Prereq-version; - - Test::Prereq - - - - - Module-Info-&Module-Info-version; - - - - Module-CoreList-&Module-Corelist-version; - - Module::Corelist - - - - - + - - - - - HTML-Parser-&HTML-Parser-version; - - HTML::Parser - - - - HTML-Tagset-&HTML-Tagset-version; - - HTML::Tagset - + + - - Compress-Zlib-&Compress-Zlib-version; - - Compress::Zlib - - - - - Crypt-SSLeay-&Crypt-SSLeay-version; - - Crypt::SSLeay + + YAML-&YAML-version; + + YAML - - - - DateManip-&DateManip-version; - - DateManip - - - - - Finance-Quote-&Finance-Quote-version; - - Finance::Quote - - - - - HTML-TableExtract-&HTML-TableExtract-version; - - HTML::TableExtract - - - - - HTML-Parser-&HTML-Parser-version; - - - - HTML-Tagset-&HTML-Tagset-version; - - - - - - - - LWP-&LWP-version; (see dependencies above) - - + - + Module::Build Build and + Installation Instructions - - Installation of Perl Modules +perl Build.PL && +./Build test - Install Perl modules by running the following - commands: + Now, as the root user: -perl Makefile.PL && -make && -make test +./Build install - Now, as the root user: + The HTML::Parser Module -make install + + HTML::Parser + - The modules listed below require modifications to the instructions in - order to install successfully. + The HTML::Parser distribution is a collection of modules that parse + and extract information from HTML documents. In order to use the included + HTML::HeadParser module, you will also need to install + . The two modules listed below can be installed + using the Perl Module + . - - Gtk-Perl-&Gtk-Perl-version;: + + + + HTML-Parser-&HTML-Parser-version; -perl Makefile.PL --without-guessing && -make && -make test + + + + HTML-Tagset-&HTML-Tagset-version; + + HTML::Tagset + + + - Now, as the root user: + + -make install + The XML::Parser Module - + + XML::Parser + - - SGMLSpm-&SGMLSpm-version; + The XML::Parser module is a Perl extension + interface to James Clark's XML parser, + expat. The module can be installed using the + Perl Module + . - If your system's Perl version is different - than &LFS-Perl-version;, you'll need to modify the sed - command below to reflect the version you have installed. + + + + XML-Parser-&XML-Parser-version; + + + + + + + + + + + The SGMLSpm Module + + + SGMLSpm + + + The SGMLSpm module is a Perl library + used for parsing the output from James Clark's SGMLS and NSGMLS + parsers. This module requires modified installation instructions, shown + below. + + + + + SGMLSpm-&SGMLSpm-version; + + + + If your system's Perl version is different + than &LFS-Perl-version;, you'll need to modify the sed + command below to reflect the version you have installed. sed -i -e "s@/usr/local/bin@/usr/bin@" \ - -e "s@/usr/local/lib/perl5@/usr/lib/perl5/site_perl/&LFS-Perl-version;@" \ - -e "s@/usr/local/lib/www/docs@/usr/share/doc/perl5@" \ + -e "s@/usr/local/lib/perl5@/usr/lib/perl5/site_perl/&LFS-Perl-version;@" \ + -e "s@/usr/local/lib/www/docs@/usr/share/doc/perl5@" \ Makefile Now, as the root user: @@ -386,7 +375,359 @@ make install_html && rm -v -f /usr/share/doc/perl5/SGMLSpm/sample.pl && install -v -m644 DOC/sample.pl /usr/share/doc/perl5/SGMLSpm - + The Tk Module + + + Tk + + + The Tk module is a + Perl interface to the + Tk package. The goal of this release is Unicode + support via Perl's and + core-Tk's use of UTF-8. Tk-&Perl-Tk-version; + builds and loads into a threaded Perl but is NOT + yet thread safe. The module can be installed using the + Perl Module + . + + + + + Tk-&Perl-Tk-version; + + + + and + + + + + + + The Net::DNS Module + + + 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 can be installed using the + Perl Module + . + + + + + Net-DNS-&Net-DNS-version; + + + + + Digest-HMAC-&Digest-HMAC-version; + + Digest::HMAC + + + + + + Digest-SHA1-&Digest-SHA1-version; + + Digest::SHA1 + + + + + + + + Net-IP-&Net-IP-version; + + Net::IP + + + + + IO-Socket-INET6-&IO-Socket-INET6-version; (required for + IPv6 support) + + IO::Socket::INET6 + + + + + + Socket6-&Socket6-version; + + Socket6 + + + + + + + + Digest-BubbleBabble-&Digest-BubbleBabble-version; + (optional, only used during the test suite) + + Digest::BubbleBabble + + + + + + + + The LWP Module + + + LWP + + + The libwww-perl (LWP) collection is a set of + Perl modules which provides 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 modules and all its Perl + module dependencies can be installed using the + Perl Module + . + + + The Compress::Zlib module requires the following + sed after untarring the distribution tarball (before + any other build commands) to use the system-installed copy of + Zlib. + +sed -i -e "s|BUILD_ZLIB = True|BUILD_ZLIB = False|" \ + -e "s|INCLUDE = ./zlib-src|INCLUDE = /usr/include|" \ + -e "s|LIB = ./zlib-src|LIB = /usr/lib|" \ + config.in + + + + + + LWP-&LWP-version; + + + + + URI-&URI-version; + + URI + + + + + + Business-ISBN-&Business-ISBN-version; (optonal, only + used during the test suite) + + Business::ISBN + + + + + + Business-ISBN-Data-&Business-ISBN-Data-version; + + Business::ISBN::Data + + + + + + + + + Test-Prereq-&Test-Prereq-version; + + Test::Prereq + + + + + + + + (optional) + + + + Module-CoreList-&Module-Corelist-version; + + Module::Corelist + + + + + + + + + + + + + + + + + + + + Compress-Zlib-&Compress-Zlib-version; + + + + Crypt-SSLeay-&Crypt-SSLeay-version; (optional, for HTTPS + support) + + Crypt::SSLeay + + + + + + + + + + + + + + + The Date::Manip Module + + + 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. + + + + + DateManip-&DateManip-version; + () + + + + The Finance::Quote Module + + + 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. The module and dependencies can be installed using the + Perl module + . + + + To run the regression test suite, you'll need to create a + symbolic link to the test + directory using the following command after unpacking the tarball + and changing into the root directory of the sources: + +ln -s test t + + Some tests will fail depending on certain conditions. See the + INSTALL file for full details. + + + + + + Finance-Quote-&Finance-Quote-version; + + + + + HTML-TableExtract-&HTML-TableExtract-version; + + HTML::TableExtract + + + + + + + + + + + + + + + + + + + + + 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 @@ -414,6 +755,12 @@ install -v -m644 DOC/sample.pl /usr/share/doc/perl5/SGMLSpm For additional commands and help, type help. + Alternatively, for scripted or non-interactive installations, use the + following syntax as the + root user: + +perl -MCPAN -e 'install [Module::Name]' + diff --git a/introduction/welcome/changelog.xml b/introduction/welcome/changelog.xml index 3af406393a..6ac961d0ab 100644 --- a/introduction/welcome/changelog.xml +++ b/introduction/welcome/changelog.xml @@ -24,6 +24,13 @@ + + July 13th, 2005 [randy]: Major overhaul to the Perl Modules + instructions including adding new modules, removing obsolete modules, + adding additional dependencies, complete text rewrite and new page + layout. + + July 12th, 2005 [djensen]: Updated to Nmap-3.81.