安装的库: libhistory.{a,so}, libreadline.{a,so}
Readline 软件包是一个提供命令行编辑和历史纪录功能的库集合。
上游开发者已经修正了自从 Readline-5.1 之后版本的一些问题。应用这些修正:
patch -Np1 -i ../readline-5.1-fixes-3.patch
重新安装 Readline 会将老的库libraryname重命名为<libraryname>.old。然而着并不是一个问题。在某些情况下它会引发ldconfig 的一个链接bug。应用下面的两个sed命令可以避免这种情况:
sed -i '/MV.*old/d' Makefile.in sed -i '/{OLDSUFF}/c:' support/shlib-install
为编译 Readline 做准备:
./configure --prefix=/usr --libdir=/lib
编译软件包:
make SHLIB_LIBS=-lncurses
make 选项的含义:
这个选项强制 Readline 链接到 libncurses 库。
这个软件包没有附带测试程序。
安装软件包:
make install
给 Readline 动态库更多恰当的权限:
chmod -v 755 /lib/lib{readline,history}.so*
将静态库移动到一个更合理的位置:
mv -v /lib/lib{readline,history}.a /usr/lib
删除 /lib 中的 .so 文件,并将它们重新连接到 /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