6.22. Readline-5.0

The Readline package is a set of libraries that offers command-line editing and history capabilities.

Approximate build time: 0.11 SBU
Required disk space: 9.1 MB
Installation depends on: Binutils, Coreutils, Diffutils, Gawk, GCC, Glibc, Grep, Make, Ncurses, and Sed

6.22.1. Installation of Readline

The following patch includes a fix for a problem where Readline sometimes only shows 33 characters on a line and then wraps to the next line. It also includes other fixes recommended by the Readline author.

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

Prepare Readline for compilation:

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

Compile the package:

make SHLIB_XLDFLAGS=-lncurses

The meaning of the make option:

SHLIB_XLDFLAGS=-lncurses

This option forces Readline to link against the libncurses library.

Install the package:

make install

Give Readline's dynamic libraries more appropriate permissions:

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

Now move the static libraries to a more appropriate location:

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

Next, remove the .so files in /lib and relink them into /usr/lib.

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.22.2. Contents of Readline

Installed libraries: libhistory.[a,so], and libreadline.[a,so]

Short Descriptions

libhistory

Provides a consistent user interface for recalling lines of history

libreadline

Aids in the consistency of user interface across discrete programs that need to provide a command line interface