The current version of LXR depends on the software tools enumerated below.
Instructions are given for Linux, but similar steps can be inferred for Windows
or other OSes.
- A Perl interpreter
Installed by default in nearly every distribution.
Check it is version 5.10 or higher,
because LXR relies on features introduced in this version.
Type the following in a terminal:
$ perl -v
This is perl 5, version 14, subversion 2 (v5.14.2) built for …
If you can't upgrade to 5.10
(released in December 2007, so this is not really bleeding edge),
install LXR 0.11.1 which is the last compatible version,
but new features will not be available.
- A recent version of the exuberant ctags program
Usually installed from a package of your distribution.
As a last resort, it is available from
SourceForge.
For "recent", read version 5 or higher.
Type this in a terminal:
$ ctags --version
Exuberant Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert
…
You can launch automatically these two tests once you have installed
LXR and before you start the configuration step.
See
next page.
- A relational database
MariaDB or
MySQL
4.x/5.x,
Oracle,
PostgreSQL
and SQLite
are supported.
You will also need the right Perl DBI drivers for
your particular database,
usually available from CPAN (if not in your distribution).
- A webserver
Apache httpd
with
mod_perl
is very common.
lighttpd is an alternate choice.
Starting with LXR 2.0,
Cherokee,
Nginx and
thttpd
may also be used.
All may be installed from a package.
- For free-text searching, either
Glimpse
or
Swish-e
version 2.1 or later
Swish-e is fully GPL'ed.
Since September 2014, Glimpse is released under ISC open source licence
which is GPL compatible.
However, it is highly unlikely you would find binary packages for them
in your favorite distribution,
but installing one from source is quite automated.
How do you choose between them?
-
Glimpse gives you access to the
line of the occurrence and can distinguish
multiple occurrences within a file.
-
Swish-e gives you access to the
file containing occurrences,
merging all occurrences into a single reference.
But it can index CVS repositories
(through file copy, which cancels the size advantage of a CVS repository).
The developers' preferred choice is Glimpse
which provides more useful information.
- The Perl database driver interface DBI
and the relevant DBD driver for the database
you are using
If they are not already installed, you can get them from CPAN.
More info
here.
- The Perl File::MMagic module
First, try package perl-file-mmagic.
If that fails, available from CPAN.