LFS 5.0 # 12391

Ronald Hummelink maillist at hummelink.xs4all.nl
Tue Mar 2 14:50:27 PST 2004

On Tue, 2004-03-02 at 19:51, Albert Reiner wrote:
> Sunday evening it was - my new LFS booted for the first time!  Thanks
> a lot for all the valuable and helpful suggestions on this list - I am
> quite amazed at how smooth everything went. (Well, some things like
> power management do not work correctly at the moment - I'm likely to
> bother you some more if I cannot sort this out by myself.)

Congrats :)

> In case someone is interested, here are some of my notes as to what I
> learned during LFS, and what I think should be considered for future
> versions of the book:
> * General observations
> A lot of things will break if anyone has spaces etc in $LFS - maybe
> one should warn against that.

I would avoid spaces in file and dirnames ;-) Even on windows i avoid it
;) Isn't avoiding spaces fairly common knowledge on unices?

> Appendix A has a very interesting, rather detailed description of all
> the binaries installed with the packages.  I would have found it
> convenient if there were a link to the corresponding list at the
> beginning of each section.

Would be useful for the HTML version, less so for pdf and the likes, I
can see the value though, but its really one for the editors. (lfs-dev

> What about additional environment variables for the linker, directory
> for the sources (patch ... $LFSSOURCES/...), etc.?

I don't think this adds much clarity...

> * Chapter 5, "Installing Glibc-2.3.2"
> make install produced errors from commands of the form
>     install .... -o root ... /tools/libexec/pt_chown
> Building as user lfs, this cannot be permitted. Maybe some Makefile
> should be edited to avoid this error.

Known, not harmful, it doesn't cause make install to stop, does it???

> * Chapter 6, Installing LFS-Bootscripts:
> LFS 5.0 wrongly lists the dependencies for bzip2.

If so, send to lfs-dev@ :)

> * Chapter 7, How does ... work?
> I think it would be clearer to say that the names of the links are "S"
> or "K" followed by a single number written with two digits, and the
> name of the script.  From my old system I think services are started
> earlier, but stopped later, when that number is smaller.

Maybe i'm too tired, but my idea is thats the case currently?

> Also one might want to mention that rcsysinit.d holds the things that
> have to be done at boot time; I suppose that is where, e.g., "depmod
> -a" should go when using modules.

lfs-dev :)?

> * Chapter 6, chroot
> The annoying "I have no name" prompt only comes from gratuitously
> setting PS1 in the chroot command. The normal bash prompt simply
> displays the bash version.

It is really caused by not having a passwd yet, Personally i make this
file before chrooting ;) I personally would like the book to do that
too, but me is just me :)

> * Chapter 8, /etc/fstab
> For those who have ext[23] partitions it would probably be more robust
> to use the LABEL= syntax rather than /dev/hd...; similarly with UUID=
> for xfs.

Personal preference. My partitions don't move around ;)

> According to the man page, the second field for the swap partition
> should be "none", not "swap".

It does say so, however for all I know it doesn't matter.
Similarly some distros do:
none         /proc      proc       defaults           0 0
However this gives you an unclear error in umounts saying something much
"none is busy" 

> * Chapter 8, Installing Linux-...
> It might be a good idea to collect here the assumptions the rest of
> the LFS system makes regarding the kernel (e.g., you need /dev/pts
> etc.).

might not be a bad idea ... lfs-dev :)

> * system date may cause make to loop on non-Y2k compliant system
> Originally I started with an old PC with a non-Y2K compliant BIOS.
> The Linux system used for work on that box always jumped into the
> future / past by a fixed amount when booting / shutting down.  For
> compiling LFS I used Knoppix and did not bother to perform those
> jumps; consequently I was compiling with a system date set to 1997.
> On such a system it is necessary to unpack tarballs with the --touch
> (or -m) option, or else make will notice (at least in some packages)
> that the configure output is older than the source files and keep
> happily looping until, well, presumably seven years have gone by.

I don't think this very specific situation is book material :)

> * logging everything
> I think it would be useful to point out some common pitfalls related
> to the mechanics of building, especially with a view to keeping logs
> of everything:
> - when a sub-shell is started, some utilities cause bash to read
>   system-wide initialization files so that the carefully constructed
>   clean environment is no longer used.
>   (This happens at least with script 2.11 and with emacs' term mode.)
> - also, configuring (?) expect in Chapter 5 needs direct access to the
>   tty.
> - in scripts, turn off bash path hashing: set +h.

The book doesn't log, nor builds from scripts, so this is not book
material. However these pitfalls are all valid if you do use scripts and
logs :)

> In the end I used scripts [available in case of interest] to do most
> of the work, using a lot of shell functions etc. for convenience.  I
> also found it very useful to read the book in lynx and always print
> the current page to a file; when writing the script, I would simply
> insert the contents of this file and trim the commentary, which
> greatly reduces the potential for missing some command or for typos.

Copy pasteing complex stuff is never a bad plan :)

> Regards, and thanks again for all the help -
> Albert.

I'm CC-ing lfs-dev cause I think there are some interesting points
mentioned. Reply to the apropriate list :)


Linux is like a small snowball rolling downhill. Microsoft is just
waiting down the mountain...

More information about the lfs-support mailing list