6.13.2. Readline 软件包内容
安装的库: libhistory.so 和 libreadline.so
安装目录: /usr/include/readline, 和
/usr/share/doc/readline-8.0
Readline 软件包是提供命令行编辑和历史功能的库的集合。
重装 Readline 会使旧的库移动到 <libraryname>.old。通常来说这并不是什么问题,但一些情况下可能引起 ldconfig 链接错误。可以通过下面的两个 sed 命令避免这个问题:
sed -i '/MV.*old/d' Makefile.in sed -i '/{OLDSUFF}/c:' support/shlib-install
准备编译 Readline:
./configure --prefix=/usr \ --disable-static \ --docdir=/usr/share/doc/readline-8.0
编译软件包:
make SHLIB_LIBS="-L/tools/lib -lncursesw"
make 选项的含义:
SHLIB_LIBS="-L/tools/lib
-lncursesw"
该选项强制 Readline 链接到 libncursesw
库。
该软件包没有测试套件。
安装软件包:
make SHLIB_LIBS="-L/tools/lib -lncursesw" install
现在移动动态库到更合适的位置并修正一些文件权限和符号链接:
mv -v /usr/lib/lib{readline,history}.so.* /lib chmod -v u+w /lib/lib{readline,history}.so.* ln -sfv ../../lib/$(readlink /usr/lib/libreadline.so) /usr/lib/libreadline.so ln -sfv ../../lib/$(readlink /usr/lib/libhistory.so ) /usr/lib/libhistory.so
如果需要的话,安装帮助文档:
install -v -m644 doc/*.{ps,pdf,html,dvi} /usr/share/doc/readline-8.0