%general-entities; ]> Readline-&readline-version; Readline <para>The Readline package is a set of libraries that offers command-line editing and history capabilities.</para> <segmentedlist> <segtitle>&buildtime;</segtitle> <segtitle>&diskspace;</segtitle> <seglistitem> <seg>&readline-ch6-sbu;</seg> <seg>&readline-ch6-du;</seg> </seglistitem> </segmentedlist> </sect2> <sect2 role="installation"> <title>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 Readline contains a bug in its handling of non-multibyte characters, which can lead to incorrect display calculations and incorrect redisplay. Fix this issue by applying the following patch from the upstream maintainer: patch -Np1 -i ../&readline-fixes-patch; Prepare Readline for compilation: ./configure --prefix=/usr --libdir=/lib Compile the package: make SHLIB_LIBS=-lncurses The meaning of the make option: SHLIB_LIBS=-lncurses This option forces Readline to link against the libncurses (really, libncursesw) library. This package does not come with a test suite. 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 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 libhistory libreadline Aids in the consistency of user interface across discrete programs that need to provide a command line interface libreadline