8.11. Readline-8.2

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

Approximate build time: less than 0.1 SBU
Required disk space: 16 MB

8.11.1. Installation of Readline

Reinstalling Readline will cause the old libraries to be moved to <libraryname>.old. While this is normally not a problem, in some cases it can trigger a linking bug in ldconfig. This can be avoided by issuing the following two seds:

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

Now fix a problem identified upstream:

patch -Np1 -i ../readline-8.2-upstream_fix-1.patch

Prepare Readline for compilation:

./configure --prefix=/usr    \
            --disable-static \
            --with-curses    \
            --docdir=/usr/share/doc/readline-8.2

The meaning of the new configure option:

--with-curses

This option tells Readline that it can find the termcap library functions in the curses library, not a separate termcap library. This will generate the correct readline.pc file.

Compile the package:

make SHLIB_LIBS="-lncursesw"

The meaning of the make option:

SHLIB_LIBS="-lncursesw"

This option forces Readline to link against the libncursesw library.

This package does not come with a test suite.

Install the package:

make SHLIB_LIBS="-lncursesw" install

If desired, install the documentation:

install -v -m644 doc/*.{ps,pdf,html,dvi} /usr/share/doc/readline-8.2

8.11.2. Contents of Readline

Installed libraries: libhistory.so and libreadline.so
Installed directories: /usr/include/readline and /usr/share/doc/readline-8.2

Short Descriptions

libhistory

Provides a consistent user interface for recalling lines of history

libreadline

Provides a set of commands for manipulating text entered in an interactive session of a program