Installing Perl5 Modules Yourself
The content on this page is adapted from
Answers to
Some Perl/CGI Questions, by Bekman Stas.
NOTE: The Perl5 module that you wish to install may be included in
our perlpac1 distribution or may be installable using the vcpan utility. Both of these methods are
preferable to those detailed below. See the Perl5 module documentation for more details.
Installing Perl5 Modules yourself on
your Virtual Server can be a tricky exercise. Utilities for installing
Perl5 modules generally assume that the installation is being done in
the root area of the file system of the host machine. As a Virtual Server
user you do not have access to the root area of the host machine. So,
you must install Perl5 modules locally, within your Virtual Server file
system.
Installing Perl5 Modules Locally
Normally, the Perl5 module installation procedure includes commands something
like these:
% perl5 Makefile.PL
% make
% make test
% make install
The first command, perl5 Makefile.PL,
directs perl5 to create a makefile for the new module you are installing.
When installing a perl5 module locally you must designate on the
command line the home directory of your perl5 installation. That information
is used by perl5 to create the makefile. Substitute the following command
for perl5 Makefile.PL:
% perl5 Makefile.PL PREFIX=/usr/home/<username>/usr/local
The value <username> above should be replaced with the username
of your Virtual Server. So the complete installation process is:
% perl5 Makefile.PL PREFIX=/usr/home/<username>/usr/local
% make
% make test
% make install
For older modules it may be necessary to designate several other variables
on the command line during the module installation:
% perl5 Makefile.PL
PREFIX=/usr/home/<username>/usr/local \
INSTALLPRIVLIB=/usr/home/<username>/usr/local/lib/perl5 \
INSTALLSCRIPT=/usr/home/<username>/usr/local/bin \
INSTALLSITELIB=/usr/home/<username>/usr/local/lib/perl5/site_perl \
INSTALLBIN=/usr/home/<username>/usr/local/bin \
INSTALLMAN1DIR=/usr/home/<username>/usr/local/lib/perl5/man \
INSTALLMAN3DIR=/usr/home/<username>/usr/local/lib/perl5/man/man3
To save yourself some typing you can create a file and put these variable
assignments above in the file (<filename>) something like this:
PREFIX=/usr/home/<username>/usr/local \
INSTALLPRIVLIB=/usr/home/<username>/usr/local/lib/perl5 \
INSTALLSCRIPT=/usr/home/<username>/usr/local/bin \
INSTALLSITELIB=/usr/home/<username>/usr/local/lib/perl5/site_perl \
INSTALLBIN=/usr/home/<username>/usr/local/bin \
INSTALLMAN1DIR=/usr/home/<username>/usr/local/lib/perl5/man \
INSTALLMAN3DIR=/usr/home/<username>/usr/local/lib/perl5/man/man3
Then, each time you install a perl5 module you can use the following syntax:
% perl5 Makefile.PL `cat <filename>`
% make
% make test
% make install
You also can have a few different local modules installation procedures,
for example one for production perl and another for development:
% perl5 Makefile.PL `cat <filename>.production`
or
% perl5 Makefile.PL `cat <filename>.development`
Making scripts find the modules you have installed
When you install perl5 on your Virtual Server, all pre-installed modules
are installed into these 4 directories (depending on which version of
perl5 you are installing):
/usr/local/lib/perl5
/usr/local/lib/perl5/i386-bsdos/5.00X
/usr/local/lib/perl5/site_perl/i386-bsdos
/usr/local/lib/perl5/site_perl
These 4 directories are already preset in the perl5's @INC array.
That array contains the paths that perl5 searches in order to find modules.
If you install perl5 modules locally as described above, you will need to
append these two directories.
|
|