| Newsgroups |
gmane.linux.lfs.book |
| Message-ID |
<177804521229.15810.10605885301130342755@rivendell.linuxfromscratch.org> |
This is an automated email from the git hooks/post-receive script.
git pushed a commit to branch trunk
in repository lfs.
The following commit(s) were added to refs/heads/trunk by this push:
new 5ec6ec66b reword for the "rolling release" warning
5ec6ec66b is described below
commit 5ec6ec66b064bf3eb5d1beef2962ee08a2366fef
Author: Xi Ruoyao <[email protected]>
AuthorDate: Wed May 6 12:46:13 2026 +0800
reword for the "rolling release" warning
The original warning is inaccurate/misleading in many aspects.
The critical thing is GCC version. There's nothing to do with the
OpenSSL version (as nothing in ch5 or 6 ever uses OpenSSL). There's
also nothing to do with the kernel "major" version as the "major"
version is just an arbitary choice to make the minor version not greater
than 19 by Linus. It does not imply any aspect of the ABI, unlike the
"major" version in a SONAME or something. The inablility to build Glibc
with Linux 7.0 API headers is simply a coincidence. If another API
header change happens in Linux 7.6, it may break Glibc build as well.
And I cannot see how the Linux API header version of the host distro can
ever affect LFS. LFS builds ch05 Glibc with its own Linux API header
installed just before Glibc, not the installation from the host distro.
So Glibc should just build fine with the 6.19 API header just installed
into $LFS/usr/include. I know it would fail to build with Linux 7.0 API
headers but why it can ever find one - if it really finds the host
distro's API header instead of the one in $LFS/usr/include we have a
serious bug and it will have to be fixed instead of papered over by
limiting the host distro.
I also know the req test will fail if the host distro has Linux 7.0 but
I've no idea if the test failure is really related to the "massive
breakage of rseq" (I assume it refers to the jemalloc breakage? But
AFAIK nothing in LFS uses jemalloc). And the glibc upstream has just
fixed the test file simply. We always treat test-file-only fixes as
"known failures" instead of "bugs requiring a fix" unless it aborts the
entire test suite too early. Add a note in the glibc page to note there
can be additional failures with Linux >= the version we use for LFS.
And there's also nothing to do with the "rolling release." For example,
you cannot build LFS 12.0 on LFS 12.4 because ch06 bash uses the host
compiler to build some code generators, and those generators are not
compatible with C23 (the default of GCC 15.2 shipped by LFS 12.4). LFS
12.4 is definitely not a rolling release...
A rolling release just catches the breakage earlier and we shouldn't
blame it to do so. IMO we should avoid the unfair accusion on rolling
distros as the same unfair accusion is often towards LFS (notably the
way we develop BLFS is very similar to a rolling release distro).
In the hostreqs page we already states building with a GCC newer than
the version specified for LFS in the book is "not tested and not
recommended." I don't know why people must ignore it (AFAIU "not
recommended" in LFS means "not supported; don't report any bug" already:
for example those "recommended" dependencies in BLFS). Make it more
explicit with assertive language and <warning>.
---
chapter01/how.xml | 6 ++----
chapter02/hostreqs.xml | 17 ++++++++++++-----
chapter08/glibc.xml | 3 ++-
3 files changed, 16 insertions(+), 10 deletions(-)
diff --git a/chapter01/how.xml b/chapter01/how.xml
index 7bf858507..d67e819ab 100644
--- a/chapter01/how.xml
+++ b/chapter01/how.xml
@@ -26,10 +26,8 @@
<para>As an alternative to installing a separate distribution on your
machine, you may wish to use a LiveCD from a commercial distribution.</para>
- <note><para>Rolling release distribution hosts, like Arch Linux, often update
- to newer package versions rather quickly, which can cause configuration or
- build failures with the versions of packages in this book. A new major
- kernel, GCC, or OpenSSL version can cause such issues.</para></note>
+ <note><para>The host distro must satisfy
+ <xref linkend='ch-partitioning-hostreqs'/>.</para></note>
<!--
<note>
diff --git a/chapter02/hostreqs.xml b/chapter02/hostreqs.xml
index f764bd0a5..1fbc5e522 100644
--- a/chapter02/hostreqs.xml
+++ b/chapter02/hostreqs.xml
@@ -37,8 +37,15 @@
<para>Earlier versions of the listed software packages may work, but have
not been tested.</para>
- <para>Host systems that have the newest set of software may cause issues
- when building a cross toolchain.</para>
+ <warning><para>Be aware that GCC newer than &gcc-version; or Binutils
+ newer than &binutils-version; are not tested. Especially, GCC newer than
+ &gcc-version; is expected to be highly likely to break the build of this
+ LFS release. Do not report such a breakage to the LFS editors. Try
+ reading a newer release of the LFS book (if one exists), or using an
+ older host distro, or downgrading GCC (if the host distro supports to do
+ so), or reading the latest LFS development book (if it still does not
+ support GCC &gcc-version; or newer, wait for the editors to update the
+ book for 2 or 4 weeks).</para></warning>
<itemizedlist spacing="compact">
@@ -49,7 +56,7 @@
<listitem>
<para><emphasis role="strong">Binutils-2.13.1</emphasis> (Versions
- greater than &binutils-version; are not recommended as they have
+ greater than &binutils-version; may not work as they have
not been tested)</para>
</listitem>
@@ -79,8 +86,8 @@
<listitem>
<!-- See https://gcc.gnu.org/r15-4719. -->
<para><emphasis role="strong">GCC-5.4</emphasis> including the C++
- compiler, <command>g++</command> (Versions greater than &gcc-version; are
- not recommended as they have not been tested). C and C++ standard
+ compiler, <command>g++</command> (Versions greater than &gcc-version;
+ may not work as they have not been tested). C and C++ standard
libraries (with headers) must also be present so the C++ compiler can
build hosted programs</para>
</listitem>
diff --git a/chapter08/glibc.xml b/chapter08/glibc.xml
index c0473ef51..0152a89b4 100644
--- a/chapter08/glibc.xml
+++ b/chapter08/glibc.xml
@@ -206,7 +206,8 @@ esac</userinput></screen>
model (for example
<emphasis>elf/tst-cpu-features-cpuinfo</emphasis>) or host kernel
version (for example
- <emphasis>stdlib/tst-arc4random-thread</emphasis>).</para>
+ <emphasis>stdlib/tst-arc4random-thread</emphasis>), or with a
+ host kernel newer than &linux-version;.</para>
</listitem>
</itemizedlist>
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
--
http://lists.linuxfromscratch.org/sympa/info/lfs-book
Unsubscribe: See the above information page