Le paquet Readline est un ensemble de bibliothèques qui offrent des fonctionnalités d'édition de la ligne de commande et d'historique.
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-2.patch
Préparez la compilation de Readline :
./configure --prefix=/usr
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 dynamiques à un endroit plus adéquat et corrigez certains liens symboliques :
mv -v /usr/lib/lib{readline,history}.so.* /lib 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 :
mkdir -v /usr/share/doc/readline-6.2 install -v -m644 doc/*.{ps,pdf,html,dvi} /usr/share/doc/readline-6.2