diff options
author | Sn4il <sn4il@thedroth.rocks> | 2024-01-10 16:57:29 +0300 |
---|---|---|
committer | Sn4il <sn4il@thedroth.rocks> | 2024-01-10 16:57:29 +0300 |
commit | c4d43142181a45b849a15cf8ec5ebe61cea33897 (patch) | |
tree | 459a90d19e6f1ece81fbf364c1b5292214d99615 /lfs-12.0-sysv/chapter06/ncurses.html | |
parent | a044ba7b1561a513e33de0b7c1876aaa401a26d7 (diff) | |
download | sn4il-site-c4d43142181a45b849a15cf8ec5ebe61cea33897.tar.gz sn4il-site-c4d43142181a45b849a15cf8ec5ebe61cea33897.zip |
LFS 12 mirror
Diffstat (limited to 'lfs-12.0-sysv/chapter06/ncurses.html')
-rw-r--r-- | lfs-12.0-sysv/chapter06/ncurses.html | 286 |
1 files changed, 286 insertions, 0 deletions
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 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" /> + <title> + 6.3. Ncurses-6.4 + </title> + <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" /> + <meta name="generator" content="DocBook XSL Stylesheets V1.79.1" /> + <link rel="stylesheet" href="../stylesheets/lfs-print.css" type= + "text/css" media="print" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + </head> + <body class="lfs" id="lfs-12.0"> + <div class="navheader"> + <h4> + Линукс с нуля - Версия 12.0 + </h4> + <h3> + Глава 6. Кросс-Компиляция временных инструментов + </h3> + <ul> + <li class="prev"> + <a accesskey="p" href="m4.html" title="M4-1.4.19">Пред.</a> + <p> + M4-1.4.19 + </p> + </li> + <li class="next"> + <a accesskey="n" href="bash.html" title="Bash-5.2.15">След.</a> + <p> + Bash-5.2.15 + </p> + </li> + <li class="up"> + <a accesskey="u" href="chapter06.html" title= + "Глава 6. Кросс-Компиляция временных инструментов">Наверх</a> + </li> + <li class="home"> + <a accesskey="h" href="../index.html" title= + "Линукс с нуля - Версия 12.0">Начало</a> + </li> + </ul> + </div> + <div class="wrap" lang="en" xml:lang="en"> + <h1 class="sect1"> + <a id="ch-tools-ncurses" name="ch-tools-ncurses"></a>6.3. Ncurses-6.4 + </h1> + <div class="package" lang="en" xml:lang="en"> + <p> + Пакет Ncurses содержит библиотеки для независимой от терминала + обработки ввода/вывода + </p> + <div class="segmentedlist"> + <div class="seglistitem"> + <div class="seg"> + <strong class="segtitle">Приблизительное время сборки:</strong> + <span class="segbody">0.3 SBU</span> + </div> + <div class="seg"> + <strong class="segtitle">Требуемое дисковое + пространство:</strong> <span class="segbody">51 MB</span> + </div> + </div> + </div> + </div> + <div class="installation" lang="en" xml:lang="en"> + <h2 class="sect2"> + 6.3.1. Установка пакета Ncurses + </h2> + <p> + Во-первых, убедитесь, что <span class= + "command"><strong>gawk</strong></span> найден первым во время + настройки: + </p> + <pre class="userinput"><kbd class= + "command">sed -i s/mawk// configure</kbd></pre> + <p> + Затем выполните следующие команды, чтобы собрать программу + <span class="quote">«<span class="quote">tic</span>»</span> на + хосте сборки: + </p> + <pre class="userinput"><kbd class="command">mkdir build +pushd build + ../configure + make -C include + make -C progs tic +popd</kbd></pre> + <p> + Подготовьте Ncurses к компиляции: + </p> + <pre class="userinput"><kbd class= + "command">./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</kbd></pre> + <div class="variablelist"> + <p class="title"> + <strong>Значение новых параметров настройки:</strong> + </p> + <dl class="variablelist"> + <dt> + <span class="term"><em class= + "parameter"><code>--with-manpage-format=normal</code></em></span> + </dt> + <dd> + <p> + Этот аргумент предотвращает установку Ncurses сжатых страниц + руководства, это может произойти, если сам дистрибутив хоста + содержит сжатые страницы руководства. + </p> + </dd> + <dt> + <span class="term"><em class= + "parameter"><code>--with-shared</code></em></span> + </dt> + <dd> + <p> + Этот аргумент позволяет Ncurses собирать и устанавливать + разделяемые библиотеки C. + </p> + </dd> + <dt> + <span class="term"><em class= + "parameter"><code>--without-normal</code></em></span> + </dt> + <dd> + <p> + Этот аргумент предотвращает сборку и установку статических + библиотек C. + </p> + </dd> + <dt> + <span class="term"><em class= + "parameter"><code>--without-debug</code></em></span> + </dt> + <dd> + <p> + Этот аргумент предотвращает сборку и установку отладочных + библиотек. + </p> + </dd> + <dt> + <span class="term"><em class= + "parameter"><code>--with-cxx-shared</code></em></span> + </dt> + <dd> + <p> + Это аргумент позволяет Ncurses собирать и устанавливать общие + привязки C++. А также предотвращает сборку и установку + статических привязок C++. + </p> + </dd> + <dt> + <span class="term"><em class= + "parameter"><code>--without-ada</code></em></span> + </dt> + <dd> + <p> + Этот аргумент гарантирует, что Ncurses будет собран без + поддержки компилятора Ada, который может присутствовать на + хосте, но будет недоступен, как только мы войдем в среду + <span class="command"><strong>chroot</strong></span>. + </p> + </dd> + <dt> + <span class="term"><em class= + "parameter"><code>--disable-stripping</code></em></span> + </dt> + <dd> + <p> + Этот аргумент не позволяет системе сборки использовать + программу <span class="command"><strong>strip</strong></span> + с хоста. Использование инструментов хоста в + кросс-компилируемой программе может привести к сбою. + </p> + </dd> + <dt> + <span class="term"><em class= + "parameter"><code>--enable-widec</code></em></span> + </dt> + <dd> + <p> + Этот аргумент указывает, что необходимо скомпилировать + библиотеки расширенных символов (такие как, <code class= + "filename">libncursesw.so.6.4</code>) вместо обычных (таких + как, <code class="filename">libncurses.so.6.4</code>). Эти + библиотеки расширенных символов можно использовать как в + многобайтовой, так и традиционной 8-битной локали, в то время + как обычные библиотеки корректно работают только в 8-битных + локалях. Библиотеки расширенных символов и обычные совместимы + на уровне исходного кода, но не совместимы в двоичном. + </p> + </dd> + </dl> + </div> + <p> + Скомпилируйте пакет: + </p> + <pre class="userinput"><kbd class="command">make</kbd></pre> + <p> + Установите пакет: + </p> + <pre class="userinput"><kbd class= + "command">make DESTDIR=$LFS TIC_PATH=$(pwd)/build/progs/tic install +echo "INPUT(-lncursesw)" > $LFS/usr/lib/libncurses.so</kbd></pre> + <div class="variablelist"> + <p class="title"> + <strong>Значение параметров установки:</strong> + </p> + <dl class="variablelist"> + <dt> + <span class="term"><em class= + "parameter"><code>TIC_PATH=$(pwd)/build/progs/tic</code></em></span> + </dt> + <dd> + <p> + Нам нужно передать путь до только что собранной программы + <span class="command"><strong>tic</strong></span>, которая + работает на сборочной машине, чтобы база данных терминала + была создана без ошибок. + </p> + </dd> + <dt> + <span class="term"><span class="command"><strong>echo + "INPUT(-lncursesw)" > + $LFS/usr/lib/libncurses.so</strong></span></span> + </dt> + <dd> + <p> + Библиотека <code class="filename">libncurses.so</code> + необходима для нескольких пакетов, которые мы скоро соберем. + Мы создадим небольшой скрипт компоновщика, как это делается + поясняется в <a class="xref" href= + "../chapter08/chapter08.html" title= + "Глава 8. Установка базового системного программного обеспечения"> + Глава 8</a>. + </p> + </dd> + </dl> + </div> + </div> + <div class="content" lang="en" xml:lang="en"> + <p> + Подробная информация об этом пакете находится в <a class="xref" + href="../chapter08/ncurses.html#contents-ncurses" title= + "8.29.2. Содержимое пакета Ncurses">Раздел 8.29.2, «Содержимое + пакета Ncurses.»</a> + </p> + </div> + </div> + <div class="navfooter"> + <ul> + <li class="prev"> + <a accesskey="p" href="m4.html" title="M4-1.4.19">Пред.</a> + <p> + M4-1.4.19 + </p> + </li> + <li class="next"> + <a accesskey="n" href="bash.html" title="Bash-5.2.15">След.</a> + <p> + Bash-5.2.15 + </p> + </li> + <li class="up"> + <a accesskey="u" href="chapter06.html" title= + "Глава 6. Кросс-Компиляция временных инструментов">Наверх</a> + </li> + <li class="home"> + <a accesskey="h" href="../index.html" title= + "Линукс с нуля - Версия 12.0">Начало</a> + </li> + </ul> + </div> + </body> +</html> |