Essential Pre-Reading Hint - update
Richard A Downing FBCS
richard at 109bean.org.uk
Mon Jan 19 01:21:03 PST 2004
This one checks good with checkHint. I changed to your (correct)
spelling of pre-requisites!
Richard A Downing FBCS http://www.109bean.org.uk
Anyone sending unwanted advertising e-mail to this address will be
charged $25 for network traffic and computing time. By extracting my
address from this message or its header, you agree to these terms.
-------------- next part --------------
AUTHOR: Richard A Downing FBCS <geek109XXXhotmailXXXcom>
LICENSE: GNU Free Documentation License Version 1.2
SYNOPSIS: Essential pre-reading for life with LFS.
You will find a better maintained version of this hint on-line at:
The URL links are easier to follow too.
This hint is a list of good documents that you can get for free
on the Internet, together with some advice from me and my friends. It will
help you get 'educated' to a level where you can:
1) build LFS successfully
2) ask sensible questions on the LFS lists and understand the replies.
3) stay sane while doing all this.
Please Note: This will always be a 'work in progress' and I'm missing a good
reference on some stuff. So, if you know of, or find a good one, please write
me. Also I just like feedback, so it never hurts to send an email.
In the LFS book, Gerard says:
"This book assumes that its reader has a good deal of knowledge about
using and installing Linux software."
Gerard then suggests some reading. I suggest some more here, and some
exercises to go with them.
Just the ability to switch on the computer and access the Internet,
navigate to the LFS website and find the hint. The rest is our topic...
Part 1. Social stuff. (MOST important)
Many people ask questions badly on the LFS mailing lists. Sometimes they
get rude replies. Read this to stay sane.
Please note that all the LFS mailing lists expect:
1) plain text email. No HTML.
2) bottom posting. Add your bit UNDERNEATH the bit you quoted.
3) pruned quotes. Don't quote everything, just the significant bit.
4) no cross-posts. Just use the right list.
5) thick skins. Don't respond to rudeness, just ignore it.
6) zazen. (Just Sitting) If others have a flame-war, just sit and watch.
Before asking questions on lfs lists, please search the archives, at least
the recent months, and PLEASE READ THE FAQ. Read the latest copy online,
not some old thing you downloaded last week.
If you ask a question that is in the FAQ, you are being extremely rude,
not least to Seth who maintains it (wonderfully). So you rightly WILL get
If someone tells you to RTFM, they are not, repeat NOT, being rude
or getting at you. This is the accepted phrase indicating that you need to
Read The Friendly Manual. If you have previously been told that a
certain Old Low Dutch word is referred to by the 'F', please be assured
that this is just a myth :-)
Part 2. Technical stuff.
Many people attempt to build LFS without sufficient understanding
or experience with LINUX. Here is an excerpt from the tar manual:
"you should understand something about how Unix-type operating systems
work, and you should know how to use some basic utilities.
For example, you should know how to create, list, copy, rename,
edit, and delete files and directories; how to change between
directories; and how to figure out where you are in the filesystem.
You should have some basic understanding of directory structure and
how files are named according to which directory they are in. You
should understand concepts such as standard output and standard
input, what various definitions of the term "argument" mean, the
differences between relative and absolute path names"
In the LFS book, Gerard says:
"We are going to build the LFS system by using a
previously installed Linux distribution such as Debian, SuSE, Slackware,
Mandrake, RedHat, etc. We will use the existing Linux system as the
development platform, because we need tools like a compiler, linker,
text editor, and other development tools to build our system. Get a
modern distro and play with it."
The Base Distro
Choosing a distro is only hard because of the choice, my
advice is to choose a cheap one because once you have learned a bit and
then built LFS you will junk it. I got mine free with a magazine. However
this may help:
Learning to use UNIX
Unlike Windows, Unix requires you to understand what you are doing to get
anything much out of it. Both Windows and Unix require deep understanding
to get the best out of them. This document is very basic, but will help
you if you are coming from Windows, or just starting out understanding
The next one is also good, yes, it's dated, but still worth reading:
If you have read those, then you are aware that we drive Unix though a
shell, which provides the command line interface. The shell we use in LFS,
as in most of the Linux world, is bash (The Bourne Again Shell). You need
to be fluent in using bash, this is a good tutorial:
(Yes, I know it says 'Advanced', but read it anyway, do you want to be a
Becoming an apprentice guru
Then there are three books that you ought to have available from or on your
box for easy reference, skim read them now so you know how to use them:
The Linux User's Guide.
(you can also find this at tldp.org, but not in html)
The Linux Systems Administrators Guide
The Linux Network Administrators Guide, Second Edition
On Building from Source
Having got yourself a LINUX system, and played a bit, you now will know a
little about the subject, but before moving on to the building of LFS you
should learn how to build packages from source code. This is an area
where it's hard to find good references. We suggest this one in the
And this is good too:
It's very important that you have some experience installing a
package from source on your distro before attempting LFS.
One good choice would be GNU-emacs. Check out it's homepage at:
Another, suggested by others, is mplayer. This is a good
challenge and a test of your developing skills. Mplayer's home website is
IBM, once Big Bad Blue, is now a great supporter of OpenSource and Linux.
They have some free tutorials on their website:
Look for the 'Tutorials' link (currently top right) and look especially
for the following:
Compiling and installing software from sources
Compiling the Linux kernel
Using regular expressions
but there are rich pickings here, even for the experienced.
One area where even seasoned UNIX veterans seem to have trouble is with
setting up the bootstrap for the new LFS system. Often these
problems come from not reading the available documents.
Most people will be building for an X86 platform. Before LFS-5.0 we used
Lilo as our recommended BootLoader, from LFS-5.0 we use GRUB. There is
little to choose between the two, and they are not the only choices
either. However, it is important to take time to familiarise yourself
with the bootloader that you plan to use.
Check out the homepages for the bootloader (lilo's is not very impressive):
And the various HOWTO's, not all will be relevant for you:
If you are building for a non-X86 platform you will have to research
your own bootloader, try a google for whatever bootstrap is used by
your base distro, but these links may help:
But the most important thing you can do is to read the man and info pages
for the bootloader. A print (on paper) of the error codes can be very
helpful (as the online docs will not be available when you need this
info), and it is vital that you have an alternative means of booting your
system before testing your new bootloader.
Part 3. Other stuff.
My starting point for any query or gap in my knowledge is google, yours
should be too. Go to the google page, and hit the advanced search button.
Learn the full capabilities of this essential tool, spend at least a whole
day on this. Truely, you can't live without it.
Note that if US English isn't your native tongue, then google has many
national versions. I use http://www.google.co.uk, as I'm English, and find
this version more colourful.
There is a whole heap of documentation at the Linux Documentation Project,
some of which I've quoted above. Learn to go there regularly and just poke
about, it's a great storehouse of knowledge. Beware though a lot of it is
out of date.
You might want to find some other software for your Linux box. The
place to search is:
LFS has it's own search system on the website. You can use it to find answers
to obscure questions that others have asked in the distant past, as well as
'where is' type inquiries. Look on the LFS website homepage.
And finally, whatever you read or don't read concerning LFS, before
asking questions, start by reading the FAQ. FAQ stands for 'Frequently
Asked Questions'. We don't want to answer them again, so don't ask them.
Read the FAQ.
I have received encouragement and advice from the following, but the words
are my fault alone.
Dagmar D'Surreal, Tushar Teredesai, Ken Dyke, James Robertson, Eric Miller,
and lots of others on lfs-chat.
But nothing would have been done at all without the LFS project
that Gerard Beekmans started: www.linuxfromscratch.org
* Initial version in old hints format.
* Revision into this format, minor changes and reproofing of links.
* Revision to point at the on-line version.
More information about the hints