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/partintro/generalinstructions.html | |
parent | a044ba7b1561a513e33de0b7c1876aaa401a26d7 (diff) | |
download | sn4il-site-c4d43142181a45b849a15cf8ec5ebe61cea33897.tar.gz sn4il-site-c4d43142181a45b849a15cf8ec5ebe61cea33897.zip |
LFS 12 mirror
Diffstat (limited to 'lfs-12.0-sysv/partintro/generalinstructions.html')
-rw-r--r-- | lfs-12.0-sysv/partintro/generalinstructions.html | 264 |
1 files changed, 264 insertions, 0 deletions
diff --git a/lfs-12.0-sysv/partintro/generalinstructions.html b/lfs-12.0-sysv/partintro/generalinstructions.html new file mode 100644 index 0000000..bdef636 --- /dev/null +++ b/lfs-12.0-sysv/partintro/generalinstructions.html @@ -0,0 +1,264 @@ +<!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> + Общие инструкции по компиляции + </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> + Важный предварительный материал + </h3> + <ul> + <li class="prev"> + <a accesskey="p" href="toolchaintechnotes.html" title= + "Технические примечания по сборочным инструментам">Пред.</a> + <p> + Технические примечания по сборочным инструментам + </p> + </li> + <li class="next"> + <a accesskey="n" href="../chapter05/chapter05.html" title= + "Сборка кросс-тулчейна">След.</a> + <p> + Сборка кросс-тулчейна + </p> + </li> + <li class="up"> + <a accesskey="u" href="partintro.html" title= + "Важный предварительный материал">Наверх</a> + </li> + <li class="home"> + <a accesskey="h" href="../index.html" title= + "Линукс с нуля - Версия 12.0">Начало</a> + </li> + </ul> + </div> + <div class="sect1" lang="en" xml:lang="en"> + <h1 class="sect1"> + <a id="ch-tools-generalinstructions" name= + "ch-tools-generalinstructions"></a>iii. Общие инструкции по + компиляции + </h1> + <p> + При сборке пакетов в инструкциях делается несколько допущений: + </p> + <div class="itemizedlist"> + <ul> + <li class="listitem"> + <p> + На некоторые пакеты необходимо наложить патчи перед + компиляцией, метод используется тогда, когда исправление + необходимо для решения проблем сборки. Патчи часто требуются + как в этой, так и в следующих главах, но иногда, когда один и + тот же пакет собирается более одного раза, патч требуется не + сразу. Поэтому не беспокойтесь, если инструкции для скачанного + патча отсутствуют. Предупреждающие сообщения о <span class= + "emphasis"><em>смещении (offset)</em></span> или <span class= + "emphasis"><em>размытии (fuzz)</em></span> также могут + появляться при применении патча. Не обращайте внимания на эти + предупреждения, патч все равно успешно применен. + </p> + </li> + <li class="listitem"> + <p> + Во время компиляции большинства пакетов на экране будут + отображаться предупреждения. Это нормально, и их можно смело + игнорировать. Предупреждения появляются, например, когда + используется устаревший, недопустимый синтаксис C или C++. + Стандарты C меняются довольно часто, и некоторые пакеты все еще + используют более старый стандарт. Это не является серьезной + проблемой, но вызывает появление предупреждений. + </p> + </li> + <li class="listitem"> + <p> + Проверьте в последний раз, что переменная среды <code class= + "envar">LFS</code> настроена правильно: + </p> + <pre class="userinput"><kbd class="command">echo $LFS</kbd></pre> + <p> + Убедитесь, что в выводе указан путь к точке монтирования + раздела LFS, то есть <code class="filename">/mnt/lfs</code>, + как в примере из этой книги. + </p> + </li> + <li class="listitem"> + <p> + Наконец, необходимо подчеркнуть два важных момента: + </p> + <div class="admon important"> + <img alt="[Важно]" src="../images/important.png" /> + <h3> + Важно + </h3> + <p> + Инструкции по сборке предполагают, что все <a class="xref" + href="../chapter02/hostreqs.html" title= + "2.2. Требования к хост-системе">Требования к + хост-системе</a>, включая символические ссылки, установлены + правильно: + </p> + <div class="itemizedlist"> + <ul> + <li class="listitem"> + <p> + <span class="command"><strong>bash</strong></span> это + используемая оболочка. + </p> + </li> + <li class="listitem"> + <p> + <span class="command"><strong>sh</strong></span> это + символическая ссылка на <span class= + "command"><strong>bash</strong></span>. + </p> + </li> + <li class="listitem"> + <p> + <span class= + "command"><strong>/usr/bin/awk</strong></span> это + символическая ссылка на <span class= + "command"><strong>gawk</strong></span>. + </p> + </li> + <li class="listitem"> + <p> + <span class= + "command"><strong>/usr/bin/yacc</strong></span> это + символическая ссылка на <span class= + "command"><strong>bison</strong></span> или небольшой + скрипт, который выполняет bison + </p> + </li> + </ul> + </div> + </div> + <div class="admon important"> + <img alt="[Важно]" src="../images/important.png" /> + <h3> + Важно + </h3> + <p> + Вот краткое описание процесса сборки: + </p> + <div class="orderedlist"> + <ol class="compact"> + <li class="listitem"> + <p> + Поместите все исходники и патчи в каталог, который + будет доступен из среды chroot, например, <code class= + "filename">/mnt/lfs/sources/</code>. + </p> + </li> + <li class="listitem"> + <p> + Перейдите в каталог <code class= + "filename">/mnt/lfs/sources/</code>. + </p> + </li> + <li class="listitem"> + <p> + <a id="buildinstr" name="buildinstr"></a>Для каждого + пакета: + </p> + <div class="orderedlist"> + <ol class="compact"> + <li class="listitem"> + <p> + С помощью программы <span class= + "command"><strong>tar</strong></span> извлеките + пакет для сборки. В <a class="xref" href= + "../chapter05/chapter05.html" title= + "Глава 5. Сборка кросс-тулчейна">Глава 5</a> + и <a class="xref" href= + "../chapter06/chapter06.html" title= + "Глава 6. Кросс-Компиляция временных инструментов"> + Глава 6</a> убедитесь, что при извлечении + пакета вы залогинены под пользователем lfs. + </p> + <p> + Не используйте никаких методов, кроме команды + <span class= + "command"><strong>tar</strong></span>, для + извлечения исходного кода. Примечательно, что + использование команды <span class= + "command"><strong>cp -R</strong></span> для + копирования дерева исходного кода в другое место + может привести к уничтожению ссылок и меток + времени в дереве исходного кода и привести к сбою + сборки. + </p> + </li> + <li class="listitem"> + <p> + Перейдите в каталог, созданный при извлечении + пакета. + </p> + </li> + <li class="listitem"> + <p> + Следуйте инструкциям по сборке пакета. + </p> + </li> + <li class="listitem"> + <p> + Вернитесь в исходный каталог, когда сборка будет + завершена. + </p> + </li> + <li class="listitem"> + <p> + Удалите извлеченный каталог, если не указано + иное. + </p> + </li> + </ol> + </div> + </li> + </ol> + </div> + </div> + </li> + </ul> + </div> + </div> + <div class="navfooter"> + <ul> + <li class="prev"> + <a accesskey="p" href="toolchaintechnotes.html" title= + "Технические примечания по сборочным инструментам">Пред.</a> + <p> + Технические примечания по сборочным инструментам + </p> + </li> + <li class="next"> + <a accesskey="n" href="../chapter05/chapter05.html" title= + "Сборка кросс-тулчейна">След.</a> + <p> + Сборка кросс-тулчейна + </p> + </li> + <li class="up"> + <a accesskey="u" href="partintro.html" title= + "Важный предварительный материал">Наверх</a> + </li> + <li class="home"> + <a accesskey="h" href="../index.html" title= + "Линукс с нуля - Версия 12.0">Начало</a> + </li> + </ul> + </div> + </body> +</html> |