6.23. Readline-5.1

Das Paket Readline enthält Bibliotheken die Unterstützung für einen Verlauf und das Bearbeiten von Kommandozeilen bereitstellen.

Geschätzte Kompilierzeit: 0.1 SBU
Ungefähr benötigter Festplattenplatz: 10.2 MB

6.23.1. Installation von Readline

Die Upstream-Entickler haben seit der letzten Veröffentlichung von Readline-5.1 viele Fehler behoben. Wenden Sie diese Korrekturen an:

patch -Np1 -i ../readline-5.1-fixes-3.patch

Durch die Neuinstallation von Readline werden die alten Bibliotheken nach <bibliothek>.old umbenannt. Normalerweise ist das kein Problem, kann aber in einigen wenigen Fällen zu Linkerproblemen in ldconfig führen. Das Problem lässt sich mit den folgenden beiden seds umgehen:

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

Bereiten Sie Readline zum Kompilieren vor:

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

Kompilieren Sie das Paket:

make SHLIB_LIBS=-lncurses

Die Bedeutung der make-Option:

SHLIB_LIBS=-lncurses

Dieser Parameter zwingt Readline, gegen die Bilbiothek libncurses zu linken (in Wirklichkeit natürlich libncursesw).

Dieses Paket enthält keine Testsuite.

Installieren Sie das Paket:

make install

Vergeben Sie Readline's dynamischen Bibliotheken passendere Zugriffsrechte:

chmod -v 755 /lib/lib{readline,history}.so*

Nun verschieben Sie die statischen Bibliotheken an eine passendere Stelle:

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

Als nächstes werden die .so-Dateien im Ordner /lib gelöscht und nach /usr/lib verlinkt:

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

6.23.2. Inhalt von Readline

Installierte Bibliotheken: libhistory.{a,so} und libreadline.{a,so}

Kurze Beschreibungen

libhistory

Stellt eine konsistente Schnittstelle zum Wiederaufrufen von Zeilen aus dem Verlauf zur Verfügung.

libreadline

Kümmert sich um die Konsistenz der Benutzerschnittstelle bei Programmen, die eine Kommandozeilenoberfläche bereitstellen müssen.