From 2203e654b389586650d553251b04544a34f189bf Mon Sep 17 00:00:00 2001 From: Sn4il Date: Mon, 2 Sep 2024 15:54:35 +0300 Subject: LFS 12.2 --- lfs-12.1-sysv/chapter08/ncurses.html | 548 ----------------------------------- 1 file changed, 548 deletions(-) delete mode 100644 lfs-12.1-sysv/chapter08/ncurses.html (limited to 'lfs-12.1-sysv/chapter08/ncurses.html') diff --git a/lfs-12.1-sysv/chapter08/ncurses.html b/lfs-12.1-sysv/chapter08/ncurses.html deleted file mode 100644 index 359af24..0000000 --- a/lfs-12.1-sysv/chapter08/ncurses.html +++ /dev/null @@ -1,548 +0,0 @@ - - - - - - 8.29. Ncurses-6.4-20230520 - - - - - - - - -

- 8.29. - Ncurses-6.4-20230520 -

-
-
-

- Пакет Ncurses содержит библиотеки для независимой от терминала - обработки ввода/вывода -

-
-
-
- Приблизительное время сборки: - 0.2 SBU -
-
- Требуемое дисковое - пространство: 45 MB -
-
-
-
-
-

- 8.29.1. Установка пакета Ncurses -

-

- Подготовьте Ncurses к компиляции: -

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

- Значение новых параметров настройки: -

-
-
- --with-shared -
-
-

- Этот параметр позволяет Ncurses собирать и устанавливать - общие библиотеки C. -

-
-
- --without-normal -
-
-

- Этот параметр отключает сборку и установку большинства - статических библиотек C. -

-
-
- --without-debug -
-
-

- Этот параметр предотвращает сборку и установку отладочных - библиотек. -

-
-
- --with-cxx-shared -
-
-

- Это аргумент позволяет Ncurses собирать и устанавливать общие - привязки C++. А также предотвращает сборку и установку - статических привязок C++. -

-
-
- --enable-pc-files -
-
-

- Этот параметр генерирует и устанавливает файлы .pc для - pkg-config. -

-
-
- --enable-widec -
-
-

- Этот параметр указывает, что при сборке пакета вместо обычных - библиотек (например, libncurses.so.6.4) будут использоваться - библиотеки с расширенным набором символов (например, - libncursesw.so.6.4). Библиотеки - с расширенным набором символов могут использоваться как с - многобайтовыми локалями, так и с традиционными 8-битовыми - локалями, тогда как обычные библиотеки работают только с - 8-битовыми локалями. Библиотеки с расширенным набором - символов и обычные библиотеки совместимы на уровне исходного - кода, но не совместимыми на уровне двоичного. -

-
-
-
-

- Скомпилируйте пакет: -

-
make
-

- У этого пакета есть набор тестов, но его можно запустить только - после того, как пакет будет установлен. Тесты находятся в каталоге - test/. Дополнительные сведения - смотрите в файле README в этом - каталоге. -

-

- Установка этого пакета приведет к перезаписи libncursesw.so.6.4. Это может привести к сбою - процесса оболочки, который использует код и данные из файла - библиотеки. Установите пакет с помощью DESTDIR и правильно замените файл библиотеки с - помощью команды install(также отредактирован - заголовочный файл curses.h, чтобы - обеспечить использование ABI расширенного набора символов, как это - сделано в Раздел 6.3, - «Ncurses-6.4-20230520»). -

-
make DESTDIR=$PWD/dest install
-install -vm755 dest/usr/lib/libncursesw.so.6.4 /usr/lib
-rm -v  dest/usr/lib/libncursesw.so.6.4
-sed -e 's/^#if.*XOPEN.*$/#if 1/' \
-    -i dest/usr/include/curses.h
-cp -av dest/* /
-

- Многие приложения ожидают, что компоновщик может найти библиотеки - Ncurses, не поддерживающие расширенный набор символов. Используя - трюк ниже, свяжите такие приложения с библиотеками расширенного - набора символов с помощью символических ссылок (обратите внимание, - что ссылки .so безопасны только в том - случае, если curses.h отредактирован - так, чтобы всегда использовать ABI расширенного набора символов): -

-
for lib in ncurses form panel menu ; do
-    ln -sfv lib${lib}w.so /usr/lib/lib${lib}.so
-    ln -sfv ${lib}w.pc    /usr/lib/pkgconfig/${lib}.pc
-done
-

- Убедитесь, что старые приложения, которым нужна -lcurses для сборки, собираются правильно: -

-
ln -sfv libncursesw.so /usr/lib/libcurses.so
-

- По желанию установите документацию Ncurses: -

-
cp -v -R doc -T /usr/share/doc/ncurses-6.4-20230520
-
- [Примечание] -

- Примечание -

-

- С помощью приведенных выше инструкций не создаются библиотеки - Ncurses, не использующие расширенный набор символов, поскольку ни - один пакет, установленный путем компиляции из исходного кода, не - будет связан с ними во время выполнения. Тем не менее, известно - что некоторые бинарные приложения, которые связаны с библиотекой - Ncurses и не поддерживающие расширенный набор символов, требуют - наличия версии 5. Если вам необходимо иметь такие библиотеки - из-за какого-либо приложения, имеющегося только в бинарном виде, - или для обеспечения совместимости с LSB, соберите пакет с помощью - следующих команд: -

-
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
-
-
-
-

- 8.29.2. - Содержимое пакета Ncurses -

-
-
-
- Установленные программы: - captoinfo (ссылка на tic), clear, - infocmp, infotocap (ссылка на tic), ncursesw6-config, reset - (ссылка на tset), tabs, tic, toe, tput и tset -
-
- Установленные библиотеки: - libcurses.so (символическая ссылка), - libform.so (символическая ссылка), libformw.so, libmenu.so - (символическая ссылка), libmenuw.so, libncurses.so - (символическая ссылка), libncursesw.so, libncurses++w.so, - libpanel.so (символическая ссылка) и libpanelw.so, -
-
- Созданные каталоги: - /usr/share/tabset, /usr/share/terminfo и - /usr/share/doc/ncurses-6.4-20230520 -
-
-
-
-

- Краткое описание -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

- captoinfo -

-
-

- Преобразует описание termcap в описание terminfo -

-
-

- clear -

-
-

- Очищает экран, если это возможно -

-
-

- infocmp -

-
-

- Сравнивает или показывает описания terminfo -

-
-

- infotocap -

-
-

- Преобразует описание terminfo в описание termcap -

-
-

- ncursesw6-config -

-
-

- Предоставляет информацию о конфигурации пакету ncurses -

-
-

- reset -

-
-

- Повторно инициализирует терминал со значениями по - умолчанию -

-
-

- tabs -

-
-

- Очищает и устанавливает размеры табуляции в терминале -

-
-

- tic -

-
-

- Компилятор описания terminfo, преобразует файл terminfo - из исходного формата в двоичный, который необходим для - подпрограмм библиотеки ncurses [Файл terminfo содержит - информацию о возможностях конкретного терминала.] -

-
-

- toe -

-
-

- Выводит список всех доступных типов терминалов, для - каждого из которых указывается его имя и приводится - описание -

-
-

- tput -

-
-

- Позволяет использовать в командной оболочке настройки, - относящиеся к особенностям конкретного терминала; может - также использоваться для сброса или инициализации - терминала, либо для вывода полного имени терминала -

-
-

- tset -

-
-

- Может использоваться для инициализации терминалов -

-
-

- libncursesw -

-
-

- Содержит функции, отображающие различными способами текст - на экране терминала. Хорошим примером использования этих - функций является меню, отображаемое командой make menuconfig при - настройке ядра -

-
-

- libncurses++w -

-
-

- Содержит функции связывания C++ с другими библиотеками в - пакете -

-
-

- libformw -

-
-

- Содержит функции, реализующие формы -

-
-

- libmenuw -

-
-

- Содержит функции, реализующие меню -

-
-

- libpanelw -

-
-

- Содержит функции, реализующие панели -

-
-
-
-
- - - -- cgit v1.2.3