From c4d43142181a45b849a15cf8ec5ebe61cea33897 Mon Sep 17 00:00:00 2001 From: Sn4il Date: Wed, 10 Jan 2024 16:57:29 +0300 Subject: LFS 12 mirror --- lfs-12.0-sysv/chapter06/ncurses.html | 286 +++++++++++++++++++++++++++++++++++ 1 file changed, 286 insertions(+) create mode 100644 lfs-12.0-sysv/chapter06/ncurses.html (limited to 'lfs-12.0-sysv/chapter06/ncurses.html') diff --git a/lfs-12.0-sysv/chapter06/ncurses.html b/lfs-12.0-sysv/chapter06/ncurses.html new file mode 100644 index 0000000..c67ad11 --- /dev/null +++ b/lfs-12.0-sysv/chapter06/ncurses.html @@ -0,0 +1,286 @@ + + + + + + 6.3. Ncurses-6.4 + + + + + + + + +
+

+ 6.3. Ncurses-6.4 +

+
+

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

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

+ 6.3.1. Установка пакета Ncurses +

+

+ Во-первых, убедитесь, что gawk найден первым во время + настройки: +

+
sed -i s/mawk// configure
+

+ Затем выполните следующие команды, чтобы собрать программу + «tic» на + хосте сборки: +

+
mkdir build
+pushd build
+  ../configure
+  make -C include
+  make -C progs tic
+popd
+

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

+
./configure --prefix=/usr                \
+            --host=$LFS_TGT              \
+            --build=$(./config.guess)    \
+            --mandir=/usr/share/man      \
+            --with-manpage-format=normal \
+            --with-shared                \
+            --without-normal             \
+            --with-cxx-shared            \
+            --without-debug              \
+            --without-ada                \
+            --disable-stripping          \
+            --enable-widec
+
+

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

+
+
+ --with-manpage-format=normal +
+
+

+ Этот аргумент предотвращает установку Ncurses сжатых страниц + руководства, это может произойти, если сам дистрибутив хоста + содержит сжатые страницы руководства. +

+
+
+ --with-shared +
+
+

+ Этот аргумент позволяет Ncurses собирать и устанавливать + разделяемые библиотеки C. +

+
+
+ --without-normal +
+
+

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

+
+
+ --without-debug +
+
+

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

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

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

+
+
+ --without-ada +
+
+

+ Этот аргумент гарантирует, что Ncurses будет собран без + поддержки компилятора Ada, который может присутствовать на + хосте, но будет недоступен, как только мы войдем в среду + chroot. +

+
+
+ --disable-stripping +
+
+

+ Этот аргумент не позволяет системе сборки использовать + программу strip + с хоста. Использование инструментов хоста в + кросс-компилируемой программе может привести к сбою. +

+
+
+ --enable-widec +
+
+

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

+
+
+
+

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

+
make
+

+ Установите пакет: +

+
make DESTDIR=$LFS TIC_PATH=$(pwd)/build/progs/tic install
+echo "INPUT(-lncursesw)" > $LFS/usr/lib/libncurses.so
+
+

+ Значение параметров установки: +

+
+
+ TIC_PATH=$(pwd)/build/progs/tic +
+
+

+ Нам нужно передать путь до только что собранной программы + tic, которая + работает на сборочной машине, чтобы база данных терминала + была создана без ошибок. +

+
+
+ echo + "INPUT(-lncursesw)" > + $LFS/usr/lib/libncurses.so +
+
+

+ Библиотека libncurses.so + необходима для нескольких пакетов, которые мы скоро соберем. + Мы создадим небольшой скрипт компоновщика, как это делается + поясняется в + Глава 8. +

+
+
+
+
+
+

+ Подробная информация об этом пакете находится в Раздел 8.29.2, «Содержимое + пакета Ncurses.» +

+
+
+ + + -- cgit v1.2.3