6.27. Readline-6.0

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

Temps de construction estimé : 0.2 SBU
Espace disque requis : 13.8 Mio

6.27.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 les correctifs de plusieurs bogues découverts depuis la version initiale de Readline-6.0 :

patch -Np1 -i ../readline-6.0-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.0
install -v -m644 doc/*.{ps,pdf,html,dvi} \
      /usr/share/doc/readline-6.0

6.27.2. Contenu de Readline

Bibliothèques installées: libhistory.{a,so} et libreadline.{a,so}

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