Пакет Readline представляет собой набор библиотек, предлагающих возможности редактирования прямо в командной строке и просмотра истории команд.
Переустановка пакета Readline приводит к перемещению старых библиотек в <libraryname>.old. Обычно это не вызывает проблем, но в некоторых случаях могут возникать ошибки линковки с ldconfig. Этого можно избежать, выполнив следующие две команды sed:
sed -i '/MV.*old/d' Makefile.in sed -i '/{OLDSUFF}/c:' support/shlib-install
Теперь устраните проблему, выявленную разработчиками:
patch -Np1 -i ../readline-8.2-upstream_fixes-3.patch
Подготовьте Readline к компиляции:
./configure --prefix=/usr \ --disable-static \ --with-curses \ --docdir=/usr/share/doc/readline-8.2
Значение нового параметра configure:
--with-curses
Этот параметр сообщает Readline, что он может найти функции
библиотеки termcap в библиотеке curses, а не в отдельной
библиотеке termcap. Это позволит сгенерировать корректный
файл readline.pc
.
Скомпилируйте пакет:
make SHLIB_LIBS="-lncursesw"
Значение параметра make:
SHLIB_LIBS="-lncursesw"
Этот параметр принудительно линкует Readline с библиотекой
libncursesw
.
С этим пакетом не поставляется набор тестов.
Установите пакет:
make SHLIB_LIBS="-lncursesw" install
По желанию установите документацию:
install -v -m644 doc/*.{ps,pdf,html,dvi} /usr/share/doc/readline-8.2
Выполните очистку после предыдущей сборки:
make distclean
Подготовьте Readline к компиляции:
CC="gcc -m32" ./configure \ --host=i686-pc-linux-gnu \ --prefix=/usr \ --libdir=/usr/lib32 \ --disable-static \ --with-curses
Скомпилируйте пакет:
make SHLIB_LIBS="-lncursesw"
Установите пакет:
make SHLIB_LIBS="-lncursesw" DESTDIR=$PWD/DESTDIR install cp -Rv DESTDIR/usr/lib32/* /usr/lib32 rm -rf DESTDIR