Why static?

Jürg Billeter j at bitron.ch
Wed Jun 4 02:47:33 PDT 2003


Ryan.Oliver at pha.com.au wrote...
> > Greg and Ryan, is the last paragraph of the whystatic section in
> > this patch correct?  If not, what then is the reason for the static
> > linking of Binutils and Gcc?
> 
> Yep, reason was to keep them self-contained and additionaly provide the
> possible shortcuts that were mentioned in the hint.
> 
> Also it just felt "cleaner" at the time having the binaries built against
> the host static...

I don't understand these reasons. One point is that the first two packages
are not really/fully self-contained as IIRC they are still dynamically
linked to libnss for example. Can you explain to me why it does matter
whether you link dynamically or statically to the same host library because
I say these two packages DON'T have to be self-contained, do they?

I know that an important point of the Pure LFS chapter 5 (and necessary for
chroot in chapter 6) is to be self-contained but that doesn't concern the
two first packages as they don't exist anymore at the very end of chapter 5.

Regarding shortcuts: I think we shouldn't mention shortcuts at all in the
book. One point is that it doesn't really matter, the pass2 gcc and binutils
last for about 7 SBUs (7 min on my machine) and if you're in such a hurry
for building a system, I don't know... The other point is that shortcuts are
- IMO - no reason to change anything in the book, so it can't really be a
point on the "why-static" page.

Perhaps I'm missing the point because I don't have such a deep knowledge of
the toolchain but perhaps you could then clarify things.

If I understand everything right I would even vote for the split of chapter
5 in stage1 (just gcc and binutils) and stage2 as proposed before by John
Anthony Kazos Jr. I think it wouldn't make a difference in the resulting
binaries but it has other advantages (beside the feeling installing
something over something): One could clarify then that stage1 is not
self-contained but everything in stage2 is self-contained without any
exception (and we don't need to bother anymore about a name change because
stage1 would make sense then ;) ).

I'll now build a test system with no static packages (and a stage2 but that
really shouldn't make a difference) and post the results of the make check.

Thanks for reading - hopefully not that much garbage *g*

Jürg
j at bitron.ch

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



More information about the lfs-dev mailing list