10.77. Readline-7.0 64 Bit

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

10.77.1. Installation of Readline

The following patch contains updates from the maintainer. The maintainer of Readline only releases these patches to fix serious issues:

patch -Np1 -i ../readline-7.0-branch_update-1.patch

Reinstalling Readline moves the old libraries to <libraryname> and a linking bug may occur in ldconfig. Prevent this with the following seds:

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

Prepare Readline for compilation:

CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" \
./configure \
    --prefix=/usr \
    --libdir=/lib64 \
    --docdir=/usr/share/doc/readline-7.0

Compile the package:

make SHLIB_LIBS=-lncurses

This package does not come with a test suite.

Install the package:

make SHLIB_LIBS=-lncurses htmldir=/usr/share/doc/readline-7.0 install

Now move the static libraries to a more appropriate location:

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

Next, relink the dynamic libraries into /usr/lib64 and remove the .so files in /lib64.

ln -svf ../../lib64/$(readlink /lib64/libreadline.so) /usr/lib64/libreadline.so
ln -svf ../../lib64/$(readlink /lib64/libhistory.so) /usr/lib64/libhistory.so
rm -v /lib64/lib{readline,history}.so

10.77.2. Contents of Readline

Installed libraries: libhistory.[a,so], libreadline.[a,so]
Installed directories: /usr/include/readline, /usr/share/doc/readline-7.0, /usr/share/readline

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