glfs/general/prog/perl-modules.xml
Randy McMurchy a3a476d805 Fixed md5sum URLs in the Perl Modules instructions due to file reorganization on Anduin
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@3984 af4574ff-66df-0310-9fd7-8a98e5e911e0
2005-05-05 19:31:14 +00:00

401 lines
18 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY perl_modules_md5sums_download_http "http://anduin.linuxfromscratch.org/sources/BLFS/SVN/Perl_Modules/Perl_Modules.gz.md5sums">
<!ENTITY perl_modules_md5sums_download_ftp "ftp://anduin.linuxfromscratch.org/BLFS/SVN/Perl_Modules/Perl_Modules.gz.md5sums">
]>
<sect1 id="perl-modules" xreflabel="Perl modules">
<?dbhtml filename="perl-modules.html" ?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<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. Most references to
<application>Perl</application> 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.</para>
<itemizedlist spacing="compact">
<listitem>
<para>Download MD5 sums (HTTP):
<ulink url="&perl_modules_md5sums_download_http;"/></para>
</listitem>
<listitem>
<para>Download MD5 sums (FTP):
<ulink url="&perl_modules_md5sums_download_ftp;"/></para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3" id="perl-module-info">The Module::Info Module</bridgehead>
<indexterm zone="perl-modules perl-module-info">
<primary sortas="g-Module-Info">Module::Info</primary>
</indexterm>
<para>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 <application>Perl</application> 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.</para>
<itemizedlist spacing='compact'>
<listitem>
<para><ulink
url="http://www.cpan.org/authors/id/M/MB/MBARBON/Module-Info-&Module-Info-version;.tar.gz">
Module-Info-&Module-Info-version;</ulink></para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Perl Module Packages</bridgehead>
<itemizedlist spacing='compact'>
<listitem>
<para id="perl-gtk-perl"><ulink
url="http://www.cpan.org/authors/id/M/ML/MLEHMANN/Gtk-Perl-&Gtk-Perl-version;.tar.gz">
Gtk-Perl-&Gtk-Perl-version;</ulink></para>
<indexterm zone="perl-modules perl-gtk-perl">
<primary sortas="g-Gtk-Perl">Gtk::Perl</primary>
</indexterm>
<itemizedlist>
<listitem>
<para id="perl-xml-writer"><ulink
url="http://www.cpan.org/authors/id/J/JO/JOSEPHW/XML-Writer-&XML-Writer-version;.tar.gz">
XML-Writer-&XML-Writer-version;</ulink></para>
<indexterm zone="perl-modules perl-xml-writer">
<primary sortas="g-XML-Writer">XML::Writer</primary>
</indexterm>
</listitem>
<listitem>
<para id="perl-xml-parser"><ulink
url="http://www.cpan.org/authors/id/M/MS/MSERGEANT/XML-Parser-&XML-Parser-version;.tar.gz">
XML-Parser-&XML-Parser-version;</ulink></para>
<indexterm zone="perl-modules perl-xml-parser">
<primary sortas="g-XML-Parser">XML::Parser</primary>
</indexterm>
<itemizedlist>
<listitem>
<para><xref linkend="expat"/></para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para><xref linkend="GTK"/></para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para id="perl-sgmlspm"><ulink
url="http://www.cpan.org/authors/id/D/DM/DMEGG/SGMLSpm-&SGMLSpm-version;.tar.gz">
SGMLSpm-&SGMLSpm-version;</ulink></para>
<indexterm zone="perl-modules perl-sgmlspm">
<primary sortas="g-SGMLSpm">SGMLSpm</primary>
</indexterm>
</listitem>
<listitem>
<para id="perl-perl-tk"><ulink
url="http://www.cpan.org/authors/id/N/NI/NI-S/Tk-&Perl-Tk-version;.tar.gz">
Tk-&Perl-Tk-version;</ulink></para>
<indexterm zone="perl-modules perl-perl-tk">
<primary sortas="g-Perl-Tk">Perl::Tk</primary>
</indexterm>
<itemizedlist>
<listitem>
<para><xref linkend="tk"/> and <xref linkend="libjpeg"/></para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para id="perl-net-dns"><ulink
url="http://www.cpan.org/authors/id/C/CR/CREIN/Net-DNS-&Net-DNS-version;.tar.gz">
Net-DNS-&Net-DNS-version;</ulink></para>
<indexterm zone="perl-modules perl-net-dns">
<primary sortas="g-Net-DNS">Net::DNS</primary>
</indexterm>
<itemizedlist>
<listitem>
<para id="perl-digest-hmac"><ulink
url="http://www.cpan.org/authors/id/G/GA/GAAS/Digest-HMAC-&Digest-HMAC-version;.tar.gz">
Digest-HMAC-&Digest-HMAC-version;</ulink></para>
<indexterm zone="perl-modules perl-digest-hmac">
<primary sortas="g-Digest-HMAC">Digest::HMAC</primary>
</indexterm>
<itemizedlist>
<listitem>
<para id="perl-digest-sha1"><ulink
url="http://www.cpan.org/authors/id/G/GA/GAAS/Digest-SHA1-&Digest-SHA1-version;.tar.gz">
Digest-SHA1-&Digest-SHA1-version;</ulink></para>
<indexterm zone="perl-modules perl-digest-sha1">
<primary sortas="g-Digest-SHA1">Digest::SHA1</primary>
</indexterm>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para id="perl-lwp"><ulink
url="http://www.cpan.org/authors/id/G/GA/GAAS/libwww-perl-&LWP-version;.tar.gz">
LWP-&LWP-version;</ulink></para>
<indexterm zone="perl-modules perl-lwp">
<primary sortas="g-LWP">LWP</primary>
</indexterm>
<itemizedlist>
<listitem>
<para id="perl-uri"><ulink
url="http://www.cpan.org/authors/id/G/GA/GAAS/URI-&URI-version;.tar.gz">
URI-&URI-version;</ulink></para>
<indexterm zone="perl-modules perl-uri">
<primary sortas="g-URI">URI</primary>
</indexterm>
<itemizedlist>
<listitem>
<para id="perl-business-isbn"><ulink
url="http://www.cpan.org/authors/id/B/BD/BDFOY/Business-ISBN-&Business-ISBN-version;.tar.gz">
Business-ISBN-&Business-ISBN-version;</ulink> (Only used during the
test suite)</para>
<indexterm zone="perl-modules perl-business-isbn">
<primary sortas="g-Business-ISBN">Business::ISBN</primary>
</indexterm>
<itemizedlist>
<listitem>
<para id="perl-business-isbn-data"><ulink
url="http://www.cpan.org/authors/id/B/BD/BDFOY/Business-ISBN-Data-&Business-ISBN-Data-version;.tar.gz">
Business-ISBN-Data-&Business-ISBN-Data-version;</ulink></para>
<indexterm zone="perl-modules perl-business-isbn-data">
<primary sortas="g-Business-ISBN-Data">Business::ISBN::Data</primary>
</indexterm>
<itemizedlist>
<listitem>
<para id="perl-test-pod"><ulink
url="http://www.cpan.org/authors/id/P/PE/PETDANCE/Test-Pod-&Test-Pod-version;.tar.gz">
Test-Pod-&Test-Pod-version;</ulink></para>
<indexterm zone="perl-modules perl-test-pod">
<primary sortas="g-Test-Pod">Test::Pod</primary>
</indexterm>
<itemizedlist>
<listitem>
<para id="perl-pod-simple"><ulink
url="http://www.cpan.org/authors/id/S/SB/SBURKE/Pod-Simple-&Pod-Simple-version;.tar.gz">
Pod-Simple-&Pod-Simple-version;</ulink></para>
<indexterm zone="perl-modules perl-pod-simple">
<primary sortas="g-Pod-Simple">Pod::Simple</primary>
</indexterm>
<itemizedlist>
<listitem>
<para id="perl-pod-escapes"><ulink
url="http://www.cpan.org/authors/id/S/SB/SBURKE/Pod-Escapes-&Pod-Escapes-version;.tar.gz">
Pod-Escapes-&Pod-Escapes-version;</ulink></para>
<indexterm zone="perl-modules perl-pod-escapes">
<primary sortas="g-Pod-Escapes">Pod::Escapes</primary>
</indexterm>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para id="perl-test-builder-tester"><ulink
url="http://www.cpan.org/authors/id/M/MA/MARKF/Test-Builder-Tester-&Test-Builder-Tester-version;.tar.gz">
Test-Builder-Tester-&Test-Builder-Tester-version;</ulink></para>
<indexterm zone="perl-modules perl-test-builder-tester">
<primary sortas="g-Test-Builder-Tester">
Test::Builder::Tester</primary>
</indexterm>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para id="perl-test-prereq"><ulink
url="http://www.cpan.org/authors/id/B/BD/BDFOY/Test-Prereq-&Test-Prereq-version;.tar.gz">
Test-Prereq-&Test-Prereq-version;</ulink></para>
<indexterm zone="perl-modules perl-test-prereq">
<primary sortas="g-Test-Prereq">Test::Prereq</primary>
</indexterm>
<itemizedlist>
<listitem>
<para><ulink
url="http://www.cpan.org/authors/id/M/MB/MBARBON/Module-Info-&Module-Info-version;.tar.gz">
Module-Info-&Module-Info-version;</ulink></para>
</listitem>
<listitem>
<para id="perl-module-corelist"><ulink
url="http://www.cpan.org/authors/id/R/RC/RCLAMP/Module-CoreList-&Module-Corelist-version;.tar.gz">
Module-CoreList-&Module-Corelist-version;</ulink></para>
<indexterm zone="perl-modules perl-module-corelist">
<primary sortas="g-Module-Corelist">Module::Corelist</primary>
</indexterm>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para id="perl-html-parser"><ulink
url="http://www.cpan.org/authors/id/G/GA/GAAS/HTML-Parser-&HTML-Parser-version;.tar.gz">
HTML-Parser-&HTML-Parser-version;</ulink></para>
<indexterm zone="perl-modules perl-html-parser">
<primary sortas="g-HTML-Parser">HTML::Parser</primary>
</indexterm>
<itemizedlist>
<listitem>
<para id="perl-html-tagset"><ulink
url="http://www.cpan.org/authors/id/S/SB/SBURKE/HTML-Tagset-&HTML-Tagset-version;.tar.gz">
HTML-Tagset-&HTML-Tagset-version;</ulink></para>
<indexterm zone="perl-modules perl-html-tagset">
<primary sortas="g-HTML-Tagset">HTML::Tagset</primary>
</indexterm>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para id="perl-compress-zlib"><ulink
url="http://www.cpan.org/authors/id/P/PM/PMQS/Compress-Zlib-&Compress-Zlib-version;.tar.gz">
Compress-Zlib-&Compress-Zlib-version;</ulink></para>
<indexterm zone="perl-modules perl-compress-zlib">
<primary sortas="g-Compress-Zlib">Compress::Zlib</primary>
</indexterm>
</listitem>
<listitem>
<para id="perl-crypt-ssleay"><ulink
url="http://www.cpan.org/authors/id/C/CH/CHAMAS/Crypt-SSLeay-&Crypt-SSLeay-version;.tar.gz">
Crypt-SSLeay-&Crypt-SSLeay-version;</ulink></para>
<indexterm zone="perl-modules perl-crypt-ssleay">
<primary sortas="g-Crypt-SSLeay">Crypt::SSLeay</primary>
</indexterm>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para id="perl-datemanip"><ulink
url="http://www.cpan.org/authors/id/S/SB/SBECK/DateManip-&DateManip-version;.tar.gz">
DateManip-&DateManip-version;</ulink></para>
<indexterm zone="perl-modules perl-datemanip">
<primary sortas="g-DateManip">DateManip</primary>
</indexterm>
</listitem>
<listitem>
<para id="perl-finance-quote"><ulink
url="http://www.cpan.org/authors/id/P/PJ/PJF/Finance-Quote-&Finance-Quote-version;.tar.gz">
Finance-Quote-&Finance-Quote-version;</ulink></para>
<indexterm zone="perl-modules perl-finance-quote">
<primary sortas="g-Finance-Quote">Finance::Quote</primary>
</indexterm>
<itemizedlist>
<listitem>
<para id="perl-html-tableextract"><ulink
url="http://www.cpan.org/authors/id/M/MS/MSISK/HTML-TableExtract-&HTML-TableExtract-version;.tar.gz">
HTML-TableExtract-&HTML-TableExtract-version;</ulink></para>
<indexterm zone="perl-modules perl-html-tableextract">
<primary sortas="g-HTML-TableExtract">HTML::TableExtract</primary>
</indexterm>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</sect2>
<sect2 role="installation">
<title>Installation of Perl Modules</title>
<para>Install <application>Perl</application> modules by running the following
commands:</para>
<screen><userinput>perl Makefile.PL &amp;&amp;
make &amp;&amp;
make test</userinput></screen>
<para>Now, as the <systemitem class="username">root</systemitem> user:</para>
<screen role="root"><userinput>make install</userinput></screen>
<para>The modules listed below require modifications to the instructions in
order to install successfully.</para>
<sect3>
<title>Gtk-Perl-&Gtk-Perl-version;:</title>
<screen><userinput>perl Makefile.PL --without-guessing &amp;&amp;
make &amp;&amp;
make test</userinput></screen>
<para>Now, as the <systemitem class="username">root</systemitem> user:</para>
<screen role="root"><userinput>make install</userinput></screen>
</sect3>
<sect3>
<title>SGMLSpm-&SGMLSpm-version;</title>
<para>If your system's <application>Perl</application> version is different
than &LFS-Perl-version;, you'll need to modify the <command>sed</command>
command below to reflect the version you have installed.</para>
<screen><userinput>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@" \
Makefile</userinput></screen>
<para>Now, as the <systemitem class="username">root</systemitem> user:</para>
<screen role="root"><userinput>make install &amp;&amp;
install -v -d -m755 /usr/share/doc/perl5 &amp;&amp;
make install_html &amp;&amp;
rm -v -f /usr/share/doc/perl5/SGMLSpm/sample.pl &amp;&amp;
install -v -m644 DOC/sample.pl /usr/share/doc/perl5/SGMLSpm</userinput></screen>
</sect3>
</sect2>
<sect2>
<title>(Alternate) Auto Installation of Perl Modules.</title>
<para>There is an alternate way of installing the modules using
<application>Perl</application>'s built-in <command>install</command> command.
The command automatically downloads the source from the CPAN
archive, extracts it, runs the commands mentioned above, and removes the build
tree. You may still need to install dependent library packages before running
the automated installation method.</para>
<para>The first time you run this 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 perl shell with the following command as the
<systemitem class="username">root</systemitem> user:</para>
<screen role="root"><userinput>perl -MCPAN -e shell</userinput></screen>
<para>Each module may now be installed from this shell with the command:</para>
<screen role="root"><userinput>install <replaceable>[Module::Name]</replaceable></userinput></screen>
<para>For additional commands and help, type <command>help</command>.</para>
</sect2>
</sect1>