Le paquet Readline est un ensemble de bibliothèques qui offrent des fonctionnalités d'édition de la ligne de commande et d'historique.
La réinstallation de 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
Préparez la compilation de Readline :
./configure --prefix=/usr \ --disable-static \ --with-curses \ --docdir=/usr/share/doc/readline-8.0
Voici la signification de l'option de configure :
--with-curses
Cette option dit à Readline qu'il peut trouver les fonctions
de la bibliothèque termcap dans la bibliothèque curses, au
lieu d'une bibliothèque termcap séparée. Elle permet aussi de
générer un fichier readline.pc
correct.
Compilez le paquet :
make SHLIB_LIBS="-lncursesw"
Voici la signification de l'option de make :
SHLIB_LIBS="-lncursesw"
Cette option force Readline à se lier à la bibliothèque
libncursesw
.
Ce paquet n'est pas fourni avec une suite de tests.
Installez le paquet :
make SHLIB_LIBS="-lncursesw" install
Maintenant, déplacez les bibliothèques dynamiques à un endroit plus adéquat et corrigez certaines permissions et certains liens symboliques :
mv -v /usr/lib/lib{readline,history}.so.* /lib chmod -v u+w /lib/lib{readline,history}.so.* ln -sfv ../../lib/$(readlink /usr/lib/libreadline.so) /usr/lib/libreadline.so ln -sfv ../../lib/$(readlink /usr/lib/libhistory.so ) /usr/lib/libhistory.so
Si désiré, installez la documentation :
install -v -m644 doc/*.{ps,pdf,html,dvi} /usr/share/doc/readline-8.0