Building 6.0 with a 2.4 host

Jeremy Utley jeremy at
Sun Feb 6 13:51:35 PST 2005

lanas wrote:

>Hi everyone,
>  Wouldn't it be possible to build LFS 6.0 from a host running a 2.4
>series kernel by compiling all packages using a proper gcc (and
>including the udev package); using standard MAKEDEV in Ch06 to go on;
>then configuring udev for the reboot ? ( I skipped a few steps there, I
>hope you nevertheless got the picture ;-)
Joel gave you a basic answer, but I'll go a little more in depth so you 
know what's up.

LFS 6.0 included a number of new things - NPTL support in glibc, and 
udev are the two we are most concerned with for this discussion.

Support for NPTL, as Joel indicated, requires futex support in the 
kernel - this support requires at least a 2.5 series kernel (Redhat 
backported support into their 2.4 kernels for the RH9 series, but doing 
so is not a trivial excercise, and isn't recommended).  For this reason, 
we lock the glibc compiled in chapter 5 to only support kernels 2.6.0 
and above (--enable-kernel=2.6.0).  If your host was running 2.4.x, your 
chapter 5 binaries would not function correctly, since they are linked 
to the NPTL glibc, and the kernel would not support NPTL.

The other issue is udev - it requires the sysfs filesystem to function, 
and in addition, all the required entries in sysfs were not present 
until kernel 2.6.2, hence the minimum requirement of the host running a 
2.6.2 kernel.

Also, that 2.6.2+ kernel must be compiled with GCC 3 - if it is compiled 
with gcc < 3, the NPTL testsuite will encounter segfaults, but our 
limited experience with this configuration says things will still 
function - however, we can't guarantee that, so we specify in the 
requirements that the kernel must be compiled with GCC 3+.

Hopefully this explanation clears things up a bit.


More information about the lfs-support mailing list