Section 15.2.  Installing Modules

Table of Contents

15.2. Installing Modules

When you want to install a module you don't have, sometimes you can simply download the distribution, unpack it, and run a series of commands from the shell. Check for a README or INSTALL file that gives you more information. If the module uses MakeMaker,[Section 15.2.  Installing Modules] the sequence will be something like this:

[Section 15.2.  Installing Modules] That's the Perl module ExtUtils::MakeMaker, which comes with Perl. It handles all of the stuff to create the file that will have the installation instructions appropriate for your system and installation of Perl.

    $ perl Makefile.PL
    $ make install

If you can't install modules in the system-wide directories, you can specify another directory with a PREFIX argument to Makefile.PL.

    $ perl Makefile.PL PREFIX=/Users/fred/lib

Some Perl module authors use another module, Module::Build, to build and install their creations. That sequence will be something like this:

    $ perl Build.PL
    $ ./Build install

Some modules depend on other modules, and they won't work unless you install yet more modules. Instead of doing all that work ourselves, we can use one of the modules that come with Perl: CPAN.pm.[Section 15.2.  Installing Modules] From the command line, you can start up the CPAN.pm shell, from which you can issue commands.

[Section 15.2.  Installing Modules] The .pm file extension stands for "Perl Module," and some popular modules are pronounced with the ".pm" to distinguish them from something else. In this case, CPAN the archive is different than CPAN the module, so the latter is said "CPAN.pm."

    $ perl -MCPAN -e shell

Even this can be complicated, so a while ago one of our authors wrote a little script called cpan, which comes with Perl and is usually installed with perl and its tools. Just call the script with a list of the modules you want to install.

    $ cpan Module::CoreList LWP CGI::Prototype

"I don't have a command line!" you might be saying. If you are using the ActiveState port of Perl (for Windows, Linux, or Solaris), you can use the Perl Package Manager (PPM),[*] which installs modules for you. You can even get the ActiveState ports on CD or DVD.[Section 15.2.  Installing Modules] Your particular operating system may also have ways to install software, including Perl modules.

[*] http://aspn.activestate.com/ASPN/docs/ActivePerl/faq/ActivePerl-faq2.html.

[Section 15.2.  Installing Modules] You can make your own CDs or DVDs, too, by creating a local repository. Though CPAN is almost 3GB by now, a "minicpan" (again, by one of the authors) pares it down to the latest versions of everything, which is about 500 MB. See the CPAN::Mini module.

    Table of Contents
    © 2000- NIV