Les versions LXR 0.9 et 0.10 sont périmées, l'information n'est conservée ici que pour référence historique.

Ces versions contiennent de nombreux bugs, dont certains peuvent être qualifiés de "bloquants". Si vous envisagez d'installer un tout nouveau service LXR, préférez systématiquement la dernière version. Vous profiterez d'une amélioration considérable de la performance et l'installation est notablement plus facile.

Les rapports d'anomalie ne sont pas acceptés.

Le cœur de la configuration de LXR est un fichier nommé lxr.conf qui DOIT être placé dans le répertoire racine de LXR. Un modèle vierge de fichier de configuration est fourni dans le sous-répertoire templates/.
  1. Copiez le modèle lxr.conf dans le répertoire source de LXR: $ cp templates/lxr.conf .
  2. Ouvrez ce fichier avec votre éditeur favori (vi, emacs, KWrite, gedit, …). Le fichier est divisé en sections pour faciliter la configuration.
    • Allez à Global configuration section, Auxiliary tools subsection.

      Vous devez indiquer à LXR quel moteur de recherche vous avez installé et à quel emplacement si les chemins par défaut ne conviennent pas:

      , 'glimpsebin' => '/usr/local/bin/glimpse' , 'glimpseindex' => '/usr/local/bin/glimpseindex'

      ou:

      , 'swishbin' => '/path/to/your/swishe-e/executable' Important!
      Comme un seul moteur de recherche peut être utilisé, commentez soit 'glimpsebin' soit 'swishbin' en préfixant la ligne avec un signe "dièse" (#).
      Vous pouvez déterminer l'emplacement des exécutables par la commande: $ which glimpse glimpseindex $ which swish-e

      Ensuite, ajustez l'emplacement du fichier de configuration de ectags pour un fonctionnement correct:

      , 'ectagsconf' => '/usr/local/share/lxr/lib/LXR/Lang/ectags.conf'

      ou:

      , 'ectagsconf' => '/home/your_userid/lxr/lib/LXR/Lang/ectags.conf' Important!
      Tous les chemins dans cette section doivent être absolus.
    • Allez à HTML subsection.

      Selon votre choix du moteur de recherche, faites pointer 'htmlsearch' vers le bon modèle; choisissez un des suivants:

      , 'htmlsearch' => 'templates/html-search-swish.html' , 'htmlsearch' => 'templates/html-search-glimpse.html' Important!
      La forme "relative" est ancrée dans le répertoire racine de LXR. Vous pouvez aussi utiliser un chemin absolu.

      Faites pointer 'stylesheet' sur lxr.css dans le répertoire des modèles ou, mieux, copiez ce fichier dans le répertoire racine de LXR (au cas où vous voulez modifier les styles).

      , 'stylesheet' => 'lxr.css' Important!
      Ce chemin est relatif à votre DocumentRoot. Vous ne pouvez pas utiliser un chemin absolu.
    • Dans File management subsection, écrivez dans 'genericconf' l'emplacement du fichier de configuration de l'analyseur: , 'genericconf' => '/usr/local/share/lxr/lib/LXR/Lang/generic.conf'

      ou:

      , 'genericconf' => '/home/your_userid/lxr/lib/LXR/Lang/generic.conf' Important!
      Ce doit être un chemin absolu.
    • Avancez jusqu'à Tree configuration section et modifiez Server configuration subsection pour informer LXR comment il sera connu du serveur web.
      • Version 0.10 ou supérieure

        L'URL d'accès est la concaténation du nom d'hôte et de la racine virtuelle du script.

        Le nom d'hôte (complet avec le protocole et le canal) est tiré du paramètre 'host_names', une liste des différents noms sous lesquels votre ordinateur est connu de votre serveur web et des serveurs DNS.

        La valeur de ce paramètre doit être cohérente avec la configuration du serveur web. , 'host_names' => [ 'http://localhost' , 'http://localhost.localdomain' , 'http://127.0.0.1' ] Par commodité, vous pouvez omettre le protocole s'il est http:.

        Si LXR ne trouve pas 'host_names', il revient au mode de compatibilité en utilisant 'baseurl' (voir le point suivant).

      • Jusqu'à la version 0.9.10

        L'URL complet d'accès est donné par le paramètre 'baseurl' avec des alias dans 'baseurl_aliases'.

        La valeur de ces paramètres doit être cohérente avec la configuration du serveur web. , 'baseurl' => 'http://localhost/lxr' , 'baseurl_aliases' => [ 'http://localhost.localdomain/lxr' , 'http://127.0.0.1/lxr' ] Important!
        Faites particulièrement attention à ce qui vient après le nom d'hôte soit le même dans toutes les lignes.

        Vous ne pouvez pas omettre le protocole (la commodité n'a pas été transposée).

      Le paramètre 'virtroot' est égal à ce qui suit le nom d'hôte dans l'URL d'accès.

      , 'virtroot' => '/lxr'
    • Allez à Tree location subsection Dans ce premier essai, nous ne considérons qu'un seul arbre résidant dans des répertoires réels.

      Mettez dans le paramètre 'sourceroot' le chemin absolu du répertoire contenant les différentes versions (comme sous-répertoires):

      , 'sourceroot' => '/home/malcolm/indexed-src'

      Donnez un nom pour l'origine des chemins relatifs de votre arbre:

      , 'sourcerootname' => 'monProjet'
    • Allez à Version selection subsection.

      Placez dans le paramètre 'range' les noms des sous-répertoires contenant les versions:

      , 'range' => [qw(v1 v2 v3.1 v4 experimental)]

      Et modifiez 'default' pour sélectionner la version à afficher au démarrage de LXR.

      , 'default' => 'v4'

      Si vos fichiers source utilisent des directives include, placez dans 'incprefix' la liste des répertoires include.

      Tous les chemins sont relatifs au répertoire de base de l'arbre source, mais n'oubliez pas de les écrire avec un séparateur initial. , 'incprefix' => [ '/include', '/include/linux' ]
    • Enfin, allez à Data storage subsection pour préciser les emplacements des données auxiliaires.

      Indiquez quelle base de données utiliser dans 'dbname' parmi les trois suivantes:

      # ----- MySql ----- , 'dbname' => 'dbi:mysql:dbname=lxr' # ----- Postgresql ----- , 'dbname' => 'dbi:Pg:dbname=lxr' # ----- Oracle ----- , 'dbname' => 'dbi:Oracle:host=localhost;sid=DEVMMS;port=1521' Pour MySQL et Postgresql, lxr est le nom donné lors de la création de la base (voir l'étape précédente).

      N'oubliez pas d'ajuster les paramètres d'accès tels que vous les avez définis dans l'étape précédente:

      , 'dbuser' => 'lxr' , 'dbpass' => 'lxr'

      Enfin, donnez un peu d'espace au moteur de recherche pour son propre usage:

      , 'glimpsedir' => '/path/to/glimpse/databases' , 'swishdir' => '/a/directory/here/' Il vaut mieux ne pas mettre ces répertoires dans votre répertoire source, car cela pourrait entraîner une confusion (pour vous, pas pour LXR). Quand bien même un seul moteur de recherche est utilisé, il n'y a aucun mal à définir les deux répertoires. Ainsi, vous pouvez librement changer de moteur de recherche.

Vous êtes prêt pour le chargement de la base de données.