=head1 INSTALLATION

<em>Last updated for LinkController 0.33.</em>

LinkController's installation system is based on that of a normal Perl
module.  

The module is normally distributed along with several other modules.
Please install these before LinkController.  

The portability of LinkController to systems other than RedHat Linux
is likely to be a problem.  The scale of that problem will depend on
how far from RedHat Linux your system is.  In the end as I get access
to more Linux Like systems (e.g. FreeBSD / Hurd etc). I'd like to
improve this situation, but not at the cost of efficiency and
maintainability on Linux.

=head1 installation from Perl module

Currently the best way to install LinkController is to directly
install it as a perl module.  

=over 4

=item *

install the CDB system

If you have RedHat Linux 7.0 or greater, this should be included
within your distribution.  Probably called "freecdb".  If not then
download it from L<http://packages.debian.org/freecdb> or from RedHat
if you have another rpm based system.

=item *

upgrade the perl CPAN module if needed

The CPAN module distributed with C<perl> 5.6.0 and included in RedHat
7.1 and 7.2 has bugs which make it try to re-install C<perl>
repeatedly.  Download and manually install version 1.59 or newer.
N.B. don't use CPAN to upgrade itsself.  That would trigger the
C<perl> reinstallation.

=item *

install LinkController using CPAN

Run the command C<perl -MCPAN -e shell> then within the CPAN shell run
the command <install WWW::Link_Controller>.

=back

=head1 installation from rpm

The easiest way to install link controller is to have the distribution
in RPM format.  Unfortunately, right now my version of RPM is patched
and experimental, so I'm not producing RPMs yet.  Hopefully, this will
soon be fixed.  In this case, simply install each of the RPMs with
@command{rpm -i}.  Trying to install just C<LinkController> will give
a list of the required rpm packages.

If your system doesn't run rpm then there isn't yet a pre-packaged
version (hopefully someone will do a port to Debian's packaging
system).  

=head1 manual installation 

Manual installation is a possibility, however since LinkController has
been designed with the free use of perl modules, it takes patience.
The basic technique to solve problems is to try installing each module
in turn and to solve any requirements that it throws up when you try
to do so.

=head2 installation pre-requisites

Before installing LinkController, you must install Perl and a series
of related Perl modules.  The full list is given in
C<lib/Bundle/LinkController.pm>.  You may find that trying to install
the LinkController bundle works for you (see the documentation of the
CPAN module e.g. with `man CPAN') but it doesn't work for me.  If it
does work then you are sorted.

The prerequisites can be downloaded from CPAN.
L<http://www.cpan.org/>

=head2 installing the LinkController module

First you must install Perl and the modules as explained above.  Then
run the following commands.

       Perl Makefile.pl;
       make;
       make test;
       make install;

The file C<check-req.out> should be empty.  If it isn't that means
that you have to install some more Perl modules.  Read the file to
find out which.

All of the tests should pass.  Do make sure that you run them so that
you know that everything is working properly.

Please note that you must run C<make> before you run C<make test>
because of the configuration of the installation system.

=head1 Choosing a Platform

Installing this software can be easy or difficult depending on what
operating system platform you are running on..  In approximate order
from easiest to most difficult (this is my guess).

=over 4

=item * 

RedHat Linux equal or better than 6.0 (see L<http://www.redhat.com/> )

=item * 

other Linux (see L<http://www.linux.org/> for example)

=item * 

SUN-OS with Perl 5.003 or better already

=item * 

other UNIX Perl 5.003 or better already 

=item * 

UNIX without Perl

=item * 

WinNT / Windows2000 (use cygwin for the best chance)

=item * 

Macintosh

=item * 

Other Windows

=back

With a previous version I had tried the top four.  Probably to get the
system running on other UNIX systems will require manually setting up
the system since the programs for doing the default installation (in
the @file{default-install}) because UNIX doesn't accurately emulate
the GNU administration programs.

You will probably find it easier to just install Linux that to get
this running on Windows.  If you do want to get it running on other
operating systems and provide B<clean> patches, then I will be
supportive and helpful, but please note that I think most of the
portability problems will be with the underlying Perl modules and CDB
related stuff.

=head1 References

L<http://scotclimb.org.uk/software/linkcont/> - download LinkController

L<http://www.linux.org/> - Get Linux

L<http://www.redhat.com/> - RedHat Linux - tested version

L<http://www.debian.org/> - Debian Linux.

=cut

