An idea: isolate libs [was: Pure LFS]

Rui Ferreira ruifmferreira at
Sat Feb 8 07:37:26 PST 2003

Steve Martin wrote:

> I have attached a little doc which attempts to explain the magic number
> 3 iterations; I think that clarifies why 3 iterations are necessary and

host-binutils: a(abc)
host-gcc:      b(abc)
host-glibc:    c(abc)

==== without bootstraping =============
static-binutils:  A(a(abc)b(abc)c(abc))
static-gcc:       B(a(abc)b(abc)c(abc))
1st-glibc:        C(A(abc)B(abc)-(---))#or C(A(abc)B(abc)c(abc)) w/o chroot

dynamic-binutils: A(A(abc)B(abc)C(AB-))#or A(A(abc)B(abc)C(ABc)) w/o chroot
dynamic-gcc:      B(A(ABC)B(abc)C(AB-))#or B(A(ABC)B(abc)C(ABc)) w/o chroot
2nd-glibc:        C(A(ABC)B(ABC)C(AB-))#or C(A(ABC)B(ABC)C(ABc)) w/o chroot

final-binutils:   A(A(ABC)B(ABC)C(ABC))
final-gcc:        B(A(ABC)B(ABC)C(ABC))
final-glibc:      C(A(ABC)B(ABC)C(ABC))

==== bootstraping gcc =================
static-binutils:  A(a(abc)b(abc)c(abc))
static-gcc:       B(a(abc)b(abc)c(abc))
1st-glibc:        C(A(abc)B(aBc)-(---))

dynamic-binutils: A(A(abc)B(aBc)C(AB-))
dynamic-gcc:      B(A(ABC)B(aBc)C(AB-))
2nd-glibc:        C(A(ABC)B(ABC)C(AB-))

The third stage is still required, but bootstraping gcc as it's benefits!

Unsubscribe: send email to listar at
and put 'unsubscribe lfs-dev' in the subject header of the message

More information about the lfs-dev mailing list