Перейти к содержанию

ncurses⚓︎

Пакет содержит библиотеку, предназначенную для управления вводом-выводом на терминал. В числе прочего, библиотека позволяет задавать экранные координаты (в знакоместах) и цвет выводимых символов. Предоставляет программисту уровень абстракции, позволяющий не беспокоиться об аппаратных различиях терминалов и писать переносимый код. Он необходим для ряда пакетов.

Версия: 6.3

Размер: 3.42Mb

Приоритет: Необходимый

Оригинальное расположение: https://ftp.gnu.org/gnu/ncurses/ncurses-6.3.tar.gz

Ссылка для загрузки: https://lx4u.ru/downloads/packages/ncurses-6.3.tar.gz

MD5: a2736befde5fee7d2b7eb45eb281cdbe

Домашняя страница: https://www.gnu.org/software/ncurses

SBU (Сборка временной системы): 1.2

SBU: 0.4

Настройка⚓︎

./configure --prefix=/usr           \
            --mandir=/usr/share/man \
            --with-shared           \
            --without-debug         \
            --without-normal        \
            --enable-pc-files       \
            --enable-widec          \
            --with-pkg-config-libdir=/usr/lib/pkgconfig

Значения параметров⚓︎

--without-normal - отключает установку большинства статических библиотек.

--enable-pc-files - включает установку файлов для pkg-config.

--enable-widec - включает сборку библиотек с широкими (многобайтовыми) символами. Они совместимы с обычными библиотеками ncurses при сборке из исходного кода, но не совместимы бинарно.

Сборка⚓︎

make

Установка⚓︎

make install

Многие пакеты при компоновке ищут библиотеки без широких символов. Для компоновки с библиотеками содержащими широкие символы выполните:

for lib in ncurses form panel menu ; do
    rm -vf                    /usr/lib/lib${lib}.so
    echo "INPUT(-l${lib}w)" > /usr/lib/lib${lib}.so
    ln -sfv ${lib}w.pc        /usr/lib/pkgconfig/${lib}.pc
done

Для сборки старых программ использующих -lcurses выполните:

rm -vf                     /usr/lib/libcursesw.so
echo "INPUT(-lncursesw)" > /usr/lib/libcursesw.so
ln -sfv libncurses.so      /usr/lib/libcurses.so

Удалите ненужную статическую библиотеку:

rm -fv /usr/lib/libncurses++w.a
Дополнительно

Если для запуска старых бинарных программ требуется библиотека ncurses без широких символов - соберите её:

make distclean
./configure --prefix=/usr    \
            --with-shared    \
            --without-normal \
            --without-debug  \
            --without-cxx-binding \
            --with-abi-version=5
make sources libs
cp -av lib/lib*.so.5* /usr/lib

При раздельной структуре каталогов⚓︎

mv -v /usr/lib/libncursesw.so.6* /lib
ln -sfv ../../lib/$(readlink /usr/lib/libncursesw.so) /usr/lib/libncursesw.so

Для multilib⚓︎

Очистка⚓︎

make distclean

Настройка⚓︎

CC="gcc -m32" CXX="g++ -m32" \
./configure --prefix=/usr           \
            --host=i686-pc-linux-gnu \
            --libdir=/usr/lib32     \
            --mandir=/usr/share/man \
            --with-shared           \
            --without-debug         \
            --without-normal        \
            --enable-pc-files       \
            --enable-widec          \
            --with-pkg-config-libdir=/usr/lib32/pkgconfig

Сборка⚓︎

make

Установка⚓︎

make DESTDIR=$PWD/DESTDIR install
mkdir -p DESTDIR/usr/lib32/pkgconfig
for lib in ncurses form panel menu ; do
    rm -vf                    DESTDIR/usr/lib32/lib${lib}.so
    echo "INPUT(-l${lib}w)" > DESTDIR/usr/lib32/lib${lib}.so
    ln -svf ${lib}w.pc        DESTDIR/usr/lib32/pkgconfig/$lib.pc
done
rm -vf                     DESTDIR/usr/lib32/libcursesw.so
echo "INPUT(-lncursesw)" > DESTDIR/usr/lib32/libcursesw.so
ln -sfv libncurses.so      DESTDIR/usr/lib32/libcurses.so
rm -fv DESTDIR/usr/lib32/libncurses++w.a
cp -Rv DESTDIR/usr/lib32/* /usr/lib32
rm -rf DESTDIR
Дополнительно

Если для запуска старых бинарных программ требуется библиотека ncurses без широких символов - соберите её:

make distclean
CC="gcc -m32" CXX="g++ -m32" ./configure --prefix=/usr    \
            --with-shared    \
            --without-normal \
            --without-debug  \
            --without-cxx-binding \
            --with-abi-version=5 --host=i686-pc-linux-gnu
make sources libs
cp -av lib/lib*.so.5* /usr/lib

Установленные файлы⚓︎

Программы: captoinfo (ссылка на tic), clear, infocmp, infotocap (ссылка на tic), ncursesw6-config, reset (ссылка на tset), tabs, tic, toe, tput и tset

Библиотеки: libcursesw.so (ссылка на libncursesw.so), libformw.so, libmenuw.so, libncursesw.so, libpanelw.so и их версии без широких символов

Директории: /usr/share/tabset /usr/share/terminfo

К началу