Installing Perl Modules From CPAN

There's more than one way to install a Perl module

Woman using laptop
Comstock Images/Stockbyte/Getty Images

There are several ways to install Perl modules from the Comprehensive Perl Archive Network on your Unix-based system. There is always more than one way to do things with Perl, and this is no different. Before embarking on any installation, download the module, unzip it and check out the documentation. Most modules are installed using the same method.

Activate the CPAN Module

The simplest way to install Perl modules to use the CPAN module itself.

If you are the system administrator and want to install the module systemwide, you'll need to switch to your root user. To fire up the CPAN module, just get to your command line and run this:

 perl -MCPAN -e shell 

If this is the first time you've run CPAN, it's going to ask you a series of questions—in most cases, the default answer is fine. Once you find yourself staring at the cpan> command prompt, installing a module is as easy as install MODULE::NAME. For example, to install the HTML::Template module you'd type:

 cpan> install HTML::Template 

CPAN should take it from there, and you'll wind up with the module installed in your Perl library.

Installing From the Command Line

Let's say you're on your system command line and you just want to install a module as quickly as possible; you can run the Perl CPAN module via command line Perl and install it in a single line:

 perl -MCPAN -e 'install HTML::Template' 

It's always advisable to download a module yourself, especially if you're having problems installing with CPAN. If you're on the command line, you can use something like wget to grab the file. Next, you'll want to unzip it with something like:

 tar -zxvf HTML-Template-2.8.tar.gz 

This unzips the module into a directory and then you can go in and poke around .

Look for the README or INSTALL files. In most cases, installing a module by hand is still pretty easy, though, although not as easy as CPAN. Once you've switched into the base directory for the module, you should be able to install it by typing:

 perl Makefile.PL
 make
 make test
 make install