coreutils: Explain gl_cv_macro_MB_CUR_MAX_good=yes, gcc-pass2: Disable libsanitizer, binutils-pass2: Remove libsframe.{a,la} like other libs, make: Remove sed

This commit is contained in:
Poltern 2023-08-12 21:50:04 +05:00
parent ff1a697d30
commit 8ff88bed3b
4 changed files with 29 additions and 10 deletions

View File

@ -101,7 +101,7 @@ cd build</userinput></screen>
<para>Удалите архивные файлы libtool, поскольку они потенциально опасны при
кросс-компиляции, также удалите ненужные статические библиотеки</para>
<screen><userinput remap="install">rm -v $LFS/usr/lib/lib{bfd,ctf,ctf-nobfd,opcodes}.{a,la}</userinput></screen>
<screen><userinput remap="install">rm -v $LFS/usr/lib/lib{bfd,ctf,ctf-nobfd,opcodes,sframe}.{a,la}</userinput></screen>
</sect2>

View File

@ -43,13 +43,17 @@
<sect2 role="installation">
<title>Установка пакета Coreutils</title>
<!--
<screen><userinput remap="configure">export gl_cv_macro_MB_CUR_MAX_good=y</userinput></screen>
-->
<para>Подготовьте Coreutils к компиляции:</para>
<screen><userinput remap="configure">./configure --prefix=/usr \
--host=$LFS_TGT \
--build=$(build-aux/config.guess) \
--enable-install-program=hostname \
--enable-no-install-program=kill,uptime</userinput></screen>
--enable-no-install-program=kill,uptime \
gl_cv_macro_MB_CUR_MAX_good=y</userinput></screen>
<variablelist>
<title>Значение параметров настройки:</title>
@ -57,11 +61,19 @@
<varlistentry>
<term><envar>--enable-install-program=hostname</envar></term>
<listitem>
<para>Это позволяет создать и установить двоичный файл
<para>Этот параметр позволяет создать и установить двоичный файл
<command>hostname</command> &ndash; по умолчанию он отключен, но
требуется для набора тестов Perl.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><envar>gl_cv_macro_MB_CUR_MAX_good=y</envar></term>
<listitem>
<para>Этот параметр необходим, чтобы обойти проблему с копией gnulib,
поставляемой пакетом, которая нарушит кросс-компиляцию.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Скомпилируйте пакет:</para>

View File

@ -96,6 +96,7 @@ cd build</userinput></screen>
--disable-libatomic \
--disable-libgomp \
--disable-libquadmath \
--disable-libsanitizer \
--disable-libssp \
--disable-libvtv \
--enable-languages=c,c++</userinput></screen>
@ -137,11 +138,23 @@ cd build</userinput></screen>
<para>Разрешить <filename class="libraryfile">libstdc++</filename> использовать
общую библиотеку <filename class="libraryfile">libgcc</filename>,
собранную на этом этапе, вместо статической версии, собранной в GCC
Проход 1. Это необходимо для поддержки обработки исключения C++</para>
Проход 1. Это необходимо для поддержки обработки исключений C++</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>--disable-libsanitizer</parameter></term>
<listitem>
<para>Отключает библиотеки среды выполнения GCC sanitizer. Они не нужны для
временного набора инструментов. Этот параметр необходим для сборки GCC без
установки <systemitem class='library'>libcrypt</systemitem> для целевого
объекта. В <xref linkend='ch-tools-gcc-pass1'/> это решалось с помощью
параметра <parameter>--disable-libstdcxx</parameter>, но теперь мы должны
передать его явно.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Скомпилируйте пакет:</para>

View File

@ -42,12 +42,6 @@
<sect2 role="installation">
<title>Установка пакета Make</title>
<para>Сначала устраните проблему, обнаруженную в make:</para>
<screen><userinput remap="pre">sed -e '/ifdef SIGPIPE/,+2 d' \
-e '/undef FATAL_SIG/i FATAL_SIG (SIGPIPE);' \
-i src/main.c</userinput></screen>
<para>Подготовьте Make к компиляции:</para>
<screen><userinput remap="configure">./configure --prefix=/usr \