*** empty log message ***
This commit is contained in:
parent
6768a3827f
commit
52130a7657
375
src/INSTALL
375
src/INSTALL
@ -1,28 +1,47 @@
|
|||||||
|
|
||||||
Chapter 4. Installation
|
More documentation can be found in the doc/ directory or at http://www.recoll.org
|
||||||
|
|
||||||
4.1. Building from source
|
|
||||||
|
|
||||||
4.1.1. Prerequisites
|
Link: HOME
|
||||||
|
Link: PREVIOUS
|
||||||
|
Link: NEXT
|
||||||
|
|
||||||
At the very least, you will need to download and install the
|
Recoll user manual
|
||||||
xapian core package (Recoll currently uses version 0.9.2), and the
|
Prev Next
|
||||||
qt runtime and development packages (Recoll development currently
|
|
||||||
uses version 3.3.5, but any 3.3 version is probably ok).
|
|
||||||
|
|
||||||
You will most probably be able to find a binary package for qt for
|
--------------------------------------------------------------------------
|
||||||
your system. You may have to compile Xapian but this is not
|
|
||||||
difficult (if you are using FreeBSD, there is a port).
|
|
||||||
|
|
||||||
You may also need libiconv. Recoll currently uses version 1.9
|
Chapter 4. Installation
|
||||||
(this should not be critical). On Linux systems, the iconv
|
|
||||||
interface is part of libc and you should not need to do anything
|
|
||||||
special.
|
|
||||||
|
|
||||||
External file types. Recoll uses external applications to index
|
Table of Contents
|
||||||
some file types. You need to install them for the file types that
|
|
||||||
you wish to have indexed (these are run-time dependencies. None is
|
4.1. Building from source
|
||||||
needed for building Recoll):
|
|
||||||
|
4.2. Installing a prebuilt copy
|
||||||
|
|
||||||
|
4.3. Configuration overview
|
||||||
|
|
||||||
|
4.1. Building from source
|
||||||
|
|
||||||
|
4.1.1. Prerequisites
|
||||||
|
|
||||||
|
At the very least, you will need to download and install the xapian core
|
||||||
|
package (Recoll currently uses version 0.9.2), and the qt runtime and
|
||||||
|
development packages (Recoll development currently uses version 3.3.5, but
|
||||||
|
any 3.3 version is probably ok).
|
||||||
|
|
||||||
|
You will most probably be able to find a binary package for qt for your
|
||||||
|
system. You may have to compile Xapian but this is not difficult (if you
|
||||||
|
are using FreeBSD, there is a port).
|
||||||
|
|
||||||
|
You may also need libiconv. Recoll currently uses version 1.9 (this should
|
||||||
|
not be critical). On Linux systems, the iconv interface is part of libc
|
||||||
|
and you should not need to do anything special.
|
||||||
|
|
||||||
|
External file types. Recoll uses external applications to index some file
|
||||||
|
types. You need to install them for the file types that you wish to have
|
||||||
|
indexed (these are run-time dependencies. None is needed for building
|
||||||
|
Recoll):
|
||||||
|
|
||||||
* PDF: pdftotext is part of the Xpdf package.
|
* PDF: pdftotext is part of the Xpdf package.
|
||||||
|
|
||||||
@ -36,39 +55,35 @@
|
|||||||
|
|
||||||
* djvu: DjVuLibre
|
* djvu: DjVuLibre
|
||||||
|
|
||||||
* MP3: Recoll will use the id3info command from the id3lib
|
* MP3: Recoll will use the id3info command from the id3lib package to
|
||||||
package to extract tag information. Without it, only the
|
extract tag information. Without it, only the filenames will be
|
||||||
filenames will be indexed.
|
indexed.
|
||||||
|
|
||||||
Text, Html, mail folders and Openoffice files are processed
|
Text, Html, mail folders and Openoffice files are processed internally.
|
||||||
internally.
|
|
||||||
|
|
||||||
--------------------------------------------------------------
|
4.1.2. Building
|
||||||
|
|
||||||
4.1.2. Building
|
Recoll has been built on Linux (redhat7.3, mandriva 2005, Fedora Core 3),
|
||||||
|
FreeBSD and Solaris 8. If you build on another system, I would very much
|
||||||
|
welcome patches.
|
||||||
|
|
||||||
Recoll has been built on Linux (redhat7.3, mandriva 2005, Fedora
|
Depending on the qt configuration on your system, you may have to set the
|
||||||
Core 3), FreeBSD and Solaris 8. If you build on another system, I
|
QTDIR and QMAKESPECS variables in your environment:
|
||||||
would very much welcome patches.
|
|
||||||
|
|
||||||
Depending on the qt configuration on your system, you may have to
|
* QTDIR should point to the directory above the one that holds the qt
|
||||||
set the QTDIR and QMAKESPECS variables in your environment:
|
include files (ie: qt.h).
|
||||||
|
|
||||||
* QTDIR should point to the directory above the one that holds
|
|
||||||
the qt include files (ie: qt.h).
|
|
||||||
|
|
||||||
* QMAKESPECS should be set to the name of one of the qt mkspecs
|
* QMAKESPECS should be set to the name of one of the qt mkspecs
|
||||||
subdirectories (ie: linux-g++).
|
subdirectories (ie: linux-g++).
|
||||||
|
|
||||||
On many Linux systems, QTDIR is set by the login scripts, and
|
On many Linux systems, QTDIR is set by the login scripts, and QMAKESPECS
|
||||||
QMAKESPECS is not needed because there is a default link in
|
is not needed because there is a default link in mkspecs/.
|
||||||
mkspecs/.
|
|
||||||
|
|
||||||
The Recoll configure script does a better job of checking these
|
The Recoll configure script does a better job of checking these variables
|
||||||
variables after release 1.1.1. Before this, unexplained errors
|
after release 1.1.1. Before this, unexplained errors will occur during
|
||||||
will occur during compilation if the environment is not set up.
|
compilation if the environment is not set up. Also, for 1.1.0 the qmake
|
||||||
Also, for 1.1.0 the qmake command should be in your PATH (later
|
command should be in your PATH (later releases can also find it in
|
||||||
releases can also find it in $QTDIR/bin).
|
$QTDIR/bin).
|
||||||
|
|
||||||
Normal procedure:
|
Normal procedure:
|
||||||
|
|
||||||
@ -76,275 +91,23 @@
|
|||||||
configure
|
configure
|
||||||
make
|
make
|
||||||
(practises usual hardship-repelling invocations)
|
(practises usual hardship-repelling invocations)
|
||||||
|
|
||||||
|
|
||||||
There little autoconfiguration. The configure script will mainly
|
There little autoconfiguration. The configure script will mainly link one
|
||||||
link one of the system-specific files in the mk directory to
|
of the system-specific files in the mk directory to mk/sysconf. If your
|
||||||
mk/sysconf. If your system is not known yet, it will tell you as
|
system is not known yet, it will tell you as much, and you may want to
|
||||||
much, and you may want to manually copy and modify one of the
|
manually copy and modify one of the existing files (the new file name
|
||||||
existing files (the new file name should be the output of uname
|
should be the output of uname -s).
|
||||||
-s).
|
|
||||||
|
|
||||||
--------------------------------------------------------------
|
4.1.3. Installation
|
||||||
|
|
||||||
4.1.3. Installation
|
Either type make install or execute recollinstall prefix, in the root of
|
||||||
|
the source tree. This will copy the commands to prefix/bin and the sample
|
||||||
Either type make install or execute recollinstall prefix, in the
|
configuration files, scripts and other shared data to prefix/share/recoll.
|
||||||
root of the source tree. This will copy the commands to prefix/bin
|
|
||||||
and the sample configuration files, scripts and other shared data
|
|
||||||
to prefix/share/recoll.
|
|
||||||
|
|
||||||
You can then proceed to configuration.
|
You can then proceed to configuration.
|
||||||
|
|
||||||
--------------------------------------------------------------
|
--------------------------------------------------------------------------
|
||||||
|
|
||||||
4.2. Installing a prebuilt copy
|
Prev Home Next
|
||||||
|
Customising the search interface Installing a prebuilt copy
|
||||||
4.2.1. Installing through a package system
|
|
||||||
|
|
||||||
If you are lucky enough to be using a port system or a prebuilt
|
|
||||||
package (RPM or other), just follow the usual procedure, and have
|
|
||||||
a look at the configuration section.
|
|
||||||
|
|
||||||
--------------------------------------------------------------
|
|
||||||
|
|
||||||
4.2.2. Installing a prebuilt Recoll
|
|
||||||
|
|
||||||
The unpackaged binary versions are just compressed tar files of a
|
|
||||||
build tree, where only the useful parts were kept (executables and
|
|
||||||
sample configuration).
|
|
||||||
|
|
||||||
The executable binary files are built with a static link to
|
|
||||||
libxapian and libiconv, to make installation easier (no
|
|
||||||
dependencies). However, this also means that you cannot change the
|
|
||||||
versions which are used.
|
|
||||||
|
|
||||||
After extracting the tar file, you can proceed with installation
|
|
||||||
as if you had built the package from source.
|
|
||||||
|
|
||||||
--------------------------------------------------------------
|
|
||||||
|
|
||||||
4.3. Configuration overview
|
|
||||||
|
|
||||||
There are two sets of configuration files. The system-wide files
|
|
||||||
are kept in a directory named like
|
|
||||||
/usr/[local/]share/recoll/examples, they define default values for
|
|
||||||
the system. A parallel set of files exists in the .recoll
|
|
||||||
directory in your home (this can be changed with the
|
|
||||||
RECOLL_CONFDIR environment variable. The database is also kept in
|
|
||||||
.recoll by default, (this can be changed by a configuration
|
|
||||||
parameter).
|
|
||||||
|
|
||||||
If the .recoll directory does not exist when recoll or recollindex
|
|
||||||
are started, it will be created with a set of empty configuration
|
|
||||||
files. recoll will give you a chance to edit the configuration
|
|
||||||
file before starting indexation. recollindex will proceed
|
|
||||||
immediately.
|
|
||||||
|
|
||||||
Most of the parameters specific to the recoll GUI are set through
|
|
||||||
the Preferences menu and stored in the standard QT place
|
|
||||||
($HOME/.qt/recollrc). You probably do not want to edit this by
|
|
||||||
hand.
|
|
||||||
|
|
||||||
For other options, Recoll uses text configuration files. You will
|
|
||||||
have to edit them by hand for now (there is still some hope for a
|
|
||||||
GUI configuration tool in the future). The most accurate
|
|
||||||
documentation for the configuration parameters is given by
|
|
||||||
comments inside the default files, and we will just give a general
|
|
||||||
overview here.
|
|
||||||
|
|
||||||
All configuration files share the same format. For exemple, a
|
|
||||||
short extract of the main configuration file might look as
|
|
||||||
follows:
|
|
||||||
|
|
||||||
# Space-separated list of directories to index.
|
|
||||||
topdirs = ~/docs /usr/share/doc
|
|
||||||
|
|
||||||
[~/somedirectory-with-utf8-txt-files]
|
|
||||||
defaultcharset = utf-8
|
|
||||||
|
|
||||||
|
|
||||||
There are three kinds of lines:
|
|
||||||
|
|
||||||
* Comment (starts with #) or empty.
|
|
||||||
|
|
||||||
* Parameter affectation (name = value).
|
|
||||||
|
|
||||||
* Section definition ([somedirname]).
|
|
||||||
|
|
||||||
Section lines allow redefining some parameters for a directory
|
|
||||||
subtree. Some of the parameters used for indexation are looked up
|
|
||||||
hierarchically from the more to the less specific. Not all
|
|
||||||
parameters can be meaningfully redefined, this is specified for
|
|
||||||
each in the next section.
|
|
||||||
|
|
||||||
The tilde character (~) is expanded in file names to the name of
|
|
||||||
the user's home directory.
|
|
||||||
|
|
||||||
White space is used for separation inside lists. Elements with
|
|
||||||
embedded spaces can be quoted using double-quotes.
|
|
||||||
|
|
||||||
--------------------------------------------------------------
|
|
||||||
|
|
||||||
4.3.1. Main configuration file
|
|
||||||
|
|
||||||
recoll.conf is the main configuration file. It defines things like
|
|
||||||
what to index (top directories and things to ignore), and the
|
|
||||||
default character set to use for document types which do not
|
|
||||||
specify it internally.
|
|
||||||
|
|
||||||
The default configuration will index your home directory. If this
|
|
||||||
is not appropriate, use recoll to copy the sample configuration,
|
|
||||||
click Cancel, and edit the configuration file before restarting
|
|
||||||
the command. This will start the initial indexation, which may
|
|
||||||
take some time.
|
|
||||||
|
|
||||||
Paramers:
|
|
||||||
|
|
||||||
topdirs
|
|
||||||
|
|
||||||
Specifies the list of directories to index (recursively).
|
|
||||||
|
|
||||||
skippedNames
|
|
||||||
|
|
||||||
A space-separated list of patterns for names of files or
|
|
||||||
directories that should be completely ignored. The list
|
|
||||||
defined in the default file is:
|
|
||||||
|
|
||||||
*~ #* bin CVS Cache caughtspam tmp
|
|
||||||
|
|
||||||
The list can be redefined for subdirectories, but is only
|
|
||||||
actually changed for the top level ones in topdirs.
|
|
||||||
|
|
||||||
The top-level directories are not affected by this list
|
|
||||||
(that is, a directory in topdirs might match and would
|
|
||||||
still be indexed).
|
|
||||||
|
|
||||||
The list in the default configuration does not exclude
|
|
||||||
hidden directories (names beginning with a dot), which
|
|
||||||
means that it may index quite a few things that you do not
|
|
||||||
want. On the other hand, mail user agents like thunderbird
|
|
||||||
usually store messages in hidden directories, and you
|
|
||||||
probably want this indexed. One possible solution is to
|
|
||||||
have .* in skippedNames, and add things like
|
|
||||||
~/.thunderbird or ~/.evolution in topdirs.
|
|
||||||
|
|
||||||
loglevel
|
|
||||||
|
|
||||||
Verbosity level for recoll and recollindex. A value of 4
|
|
||||||
lists quite a lot of debug/information messages. 2 only
|
|
||||||
lists errors.
|
|
||||||
|
|
||||||
logfilename
|
|
||||||
|
|
||||||
Where should the messages go. 'stderr' can be used as a
|
|
||||||
special value.
|
|
||||||
|
|
||||||
filtersdir
|
|
||||||
|
|
||||||
A directory to search for the external filter scripts used
|
|
||||||
to index some types of files. The value should not be
|
|
||||||
changed, except if you want to modify one of the default
|
|
||||||
scripts. The value can be redefined for any subdirectory.
|
|
||||||
|
|
||||||
indexstemminglanguages
|
|
||||||
|
|
||||||
A list of languages for which the stem expansion databases
|
|
||||||
will be built. See recollindex(1) for possible values. You
|
|
||||||
can add a stem expansion database for a different language
|
|
||||||
by using recollindex -s, but it will be deleted during the
|
|
||||||
next indexation. Only languages listed in the
|
|
||||||
configuration file are permanent.
|
|
||||||
|
|
||||||
iconsdir
|
|
||||||
|
|
||||||
The name of the directory where recoll result list icons
|
|
||||||
are stored. You can change this if you want different
|
|
||||||
images.
|
|
||||||
|
|
||||||
dbdir
|
|
||||||
|
|
||||||
The name of the Xapian database directory. It will be
|
|
||||||
created if needed when the database is initialized.
|
|
||||||
|
|
||||||
defaultcharset
|
|
||||||
|
|
||||||
The name of the character set used for files that do not
|
|
||||||
contain a character set definition (ie: plain text files).
|
|
||||||
This can be redefined for any subdirectory. If it is not
|
|
||||||
set at all, the character set used is the one defined by
|
|
||||||
the nls environment (LC_ALL, LC_CTYPE, LANG), or iso8859-1
|
|
||||||
if nothing is set.
|
|
||||||
|
|
||||||
guesscharset
|
|
||||||
|
|
||||||
Decide if we try to guess the character set of files if no
|
|
||||||
internal value is available (ie: for plain text files).
|
|
||||||
This does not work well in general, and should probably
|
|
||||||
not be used.
|
|
||||||
|
|
||||||
usesystemfilecommand
|
|
||||||
|
|
||||||
Decide if we use the file -i system command as a final
|
|
||||||
step for determining the mime type for a file (the main
|
|
||||||
procedure uses suffix associations as defined in the
|
|
||||||
mimemap file). This can be useful for files with
|
|
||||||
suffixless names, but it will also cause the indexation of
|
|
||||||
many bogus "text" files.
|
|
||||||
|
|
||||||
indexallfilenames
|
|
||||||
|
|
||||||
Recoll indexes file names in a special section of the
|
|
||||||
database to allow specific file names searches using wild
|
|
||||||
cards. This parameter decides if file name indexing is
|
|
||||||
performed only for files with mime types that would
|
|
||||||
qualify them for full text indexation, or for all files
|
|
||||||
inside the selected subtrees, independant of mime type.
|
|
||||||
|
|
||||||
--------------------------------------------------------------
|
|
||||||
|
|
||||||
4.3.2. The mimemap file
|
|
||||||
|
|
||||||
mimemap specifies the file name extension to mime type mappings.
|
|
||||||
|
|
||||||
For file names without an extension, or with an unknown one, the
|
|
||||||
system's file -i command will be executed to determine the mime
|
|
||||||
type (this can be switched off inside the main configuration
|
|
||||||
file).
|
|
||||||
|
|
||||||
mimemap also has a list of extensions which should be ignored
|
|
||||||
totally (to avoid losing time by executing file for things that
|
|
||||||
certainly should not be indexed).
|
|
||||||
|
|
||||||
The mappings can be specified on a per-subtree basis, which may be
|
|
||||||
useful in some cases. Example: gaim logs have a .txt extension but
|
|
||||||
should be handled specially, which is possible because they are
|
|
||||||
usually all located in one place.
|
|
||||||
|
|
||||||
mimemap also has a recoll_noindex variable which is a list of
|
|
||||||
suffixes. Matching files will be skipped (avoids unnecessary
|
|
||||||
decompressions or file executions). This is partially redundant
|
|
||||||
with skippedNames in the main configuration file, with two
|
|
||||||
differences: it will not affect directories, and it can be changed
|
|
||||||
for any subdirectory.
|
|
||||||
|
|
||||||
--------------------------------------------------------------
|
|
||||||
|
|
||||||
4.3.3. The mimeconf file
|
|
||||||
|
|
||||||
mimeconf specifies how the different mime types are handled for
|
|
||||||
indexation, and for display.
|
|
||||||
|
|
||||||
Changing the indexation parameters is probably not a good idea
|
|
||||||
except if you are a Recoll developper.
|
|
||||||
|
|
||||||
You may want to adjust the external viewers defined in (ie: html
|
|
||||||
is either previewed internally or displayed using firefox, but you
|
|
||||||
may prefer mozilla, your openoffice.org program might be named
|
|
||||||
oofice instead of openoffice ...). Look for the [view] section.
|
|
||||||
|
|
||||||
You can also change the icons which are displayed by recoll in the
|
|
||||||
result lists (the values are the basenames of the png images
|
|
||||||
inside the iconsdir directory (specified in recoll.conf).
|
|
||||||
|
|
||||||
--------------------------------------------------------------
|
|
||||||
|
|||||||
874
src/README
874
src/README
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user