6.32. Readline-6.2

Le paquet Readline est un ensemble de bibliothèques qui offrent des fonctionnalités d'édition de la ligne de commande etd'historique.

Temps de construction estimé : 0.1 SBU
Espace disque requis : 17.2 Mo

6.32.1. Installation de Readline

Réinstaller Readline aura pour conséquence que les vieilles bibliothèques seront déplacées vers <nom_bibliotheque>.old. Même si cela n'est pas normalement un problème, cela peut dans certains cas provoquer un bogue de lien dans ldconfig. Cela peut être évité en effectuant les deux seds suivants :

sed -i '/MV.*old/d' Makefile.in
sed -i '/{OLDSUFF}/c:' support/shlib-install

Appliquez un correctif pour corriger un bogue connu corrigé en amont :

patch -Np1 -i ../readline-6.2-fixes-1.patch

Préparez la compilation de Readline :

./configure --prefix=/usr --libdir=/lib

Compilez le paquet :

make SHLIB_LIBS=-lncurses

Voici la signification de l'option de make :

SHLIB_LIBS=-lncurses

Cette option force Readline à se lier à la bibliothèque libncurses (en réalité, libncursesw).

Ce paquet n'est pas fourni avec une suite de tests.

Installez le paquet :

make install

Maintenant, déplacez les bibliothèques statiques à un emplacement plus appropriées :

mv -v /lib/lib{readline,history}.a /usr/lib

Ensuite, supprimez les fichiers .so dans /lib et liez les à nouveau vers /usr/lib :

rm -v /lib/lib{readline,history}.so
ln -sfv ../../lib/libreadline.so.6 /usr/lib/libreadline.so
ln -sfv ../../lib/libhistory.so.6 /usr/lib/libhistory.so

Si désiré, installez la documentation :

mkdir   -v       /usr/share/doc/readline-6.2
install -v -m644 doc/*.{ps,pdf,html,dvi} \
                 /usr/share/doc/readline-6.2

6.32.2. Contenu de Readline

Bibliothèques installées: libhistory.{a,so} et libreadline.{a,so}
Répertoires installés: /usr/include/readline, /usr/share/readline, /usr/share/doc/readline-6.2

Descriptions courtes

libhistory

Fournit une interface utilisateur cohérente pour rappeler des lignes dans l'historique

libreadline

Aide à une cohérence dans l'interface utilisateur pour des programmes discrets qui ont besoin d'une interface en ligne de commande