Next
Previous
Contents
I started this document around May 1999. I tried a few Linux distributions
and came to the conclusion that there's wasn't a distribution I totally liked.
Every distribution has it's own advantages and disadvantages, but I was never
satisfied with what I had (although Debian comes very close to what I want),
so I decided to explore the possibility of building my own Linux distribution
using nothing but source code of programs. As I found out there's quite a bit
of work involved, but it's also a lot of fun and you really learn a lot by
doing it, since you need to configure every single aspect of the system. This
forces you to read a lot of manuals on how to configure various software. It
also gives you total control over your system (well, that's the idea). You
know exactly what software is installed, how it is configured and where all
the configuration files reside.
I started writing a series of articles for a Dutch/Belgium E-zine on this
subject. Not soon after I got stuck getting a compiler to work. I decided to
give this project a rest at that point, since a lot of things at that time
needed my attention (I was about to move from The Netherlands to Canada to
get married. There were a lot of things to arrange regarding the move abroad
and a lot of immigration stuff to sort out).
A few months after my arrival in Canada and getting married, I decided
to continue my work on this project. Pretty much starting all over again from
scratch and following a different approach, I got things to work out finally.
The end result is what you are reading right now.
The latest version of the document can always be found at
http://huizen.dds.nl/~glb/
2.0-beta2 - Unknown date, sorry folks
- New Glibc and compiler installation method
- Totally revised software installation method - eliminated the need of all
the statically linked packages in former chapter 6.1.
- Various fixed in software installation
- Installed a few more programs from the util-linux package
- Explained in greater detail what the $LFS is all about - how to
and how not to use it.
- Section 5.2: Fixed reversed symlink (was ln -s dest. source in stead of
ln -s source dest)
1.3 - February 11th, 2000
- Two mailinglists are available. Read section 1.6 for more details
- Changed the compiler setup. Gcc-2.95.2 no longer is being used. In stead
gcc-2.7.2.3 is the new C compiler and egcs-2.91.60 is the C++ compiler.
- Updated sections that contained compile instructions by running make CC=/usr/gcc2723/bin/gcc.
A simple 'make' suffices now since gcc-2.7.2.3 is our default C compiler now.
- Changed the 'abstract' line to be more accurate.
- Fixed typos that were left behind in the previous versions
- Moved section 1.4 (TODO) to section 1.5.
- Section 2: Added the version numbers of the software that are known to
work with this document.
- Section 2: Mawk link was broken (thanks to David McCauley (and various
other people) for informing me about this).
- Section 2: Sysklogd link was broken (thanks to David McCauley for informing
me about this).
- Section 2: divided the list into mandatory and optional software (the separation
is software for section 13 and above)
- Inserted new section 1.4: Current projects.
- Inserted new section 3.1: How we are going to do things. In this section
I briefly explain that you need to already have Linux installed to use this
HOWTO and also explained there is no need for any kind of boot disk.
- Section 3.3: Clarified the currently used kernel image is to be used (thanks
to Andrew Blais for pointing this out).
- Section 3.4: Added the usr/share directory to the list of directories that
need to be created.
- Section 5: Clarified that the kernel source tree must be copied to the
LFS partition
- Section 6.1.2: Pointed out availability of fixed package in case compilation
fails
- Section 6.1.4: Rather than renaming ginstall to install we create a symlink
install
- Section 6.1.8: Pointed out availability of fixed package in case compilation
fails
- Section 6.1.10: Pointed out availability of fixed package in case compilation
fails
- Section 6.1.13: Pointed out availability of fixed package in case compilation
fails
- Section 6.1.14: Pointed out availability of fixed package in case compilation
fails
- Section 6.1.17: Pointed out availability of fixed package in case compilation
fails
- Section 6.1.18: Pointed out availability of fixed package in case compilation
fails
- Section 7.2: The gcc-2.7.2.3 compiler needs to be linked statically at
first (to avoid possible Library conflicts between the normal and LFS system).
- Inserted section 11.1: Reinstalling GCC 2.7.2.3
- Section 11.13: Pointed out availability of fixed package in case compilation
fails
- Section 11.19: Pointed out availability of fixed package in case compilation
fails
- Section 14.4: Failed to mention that the package needs to be configured
prior to compilation.
- Section 15.2: Failed to mention that the package needs to be configured
prior to compilation.
- Inserted a new section 19 (old section 19 has become section 20) that contains
migrating information, in case you need to do some re-modeling to change a
setup (like migrating to the new compiler setup in this version).
1.2 - January 9th, 2000
- Section 2: Owen Cook pointed out that the link for the sysvinit package
was wrong. It said cistron.nl. It should be ftp.cistron.nl
- Section 3.4: Added the usr/include directory to the list of directories
that need to be created
- Section 4.3: Made a notion of the possibility that somebody's system might
be using shadowed passwords.
- Section 6.1.3: The majority of the files that need to be copied was missing
(the files that need to be copied to $LFS/usr/bin).
- Section 6.1.4: Forgot to mention that the mv program needs to be copied
as well
- Section 6.1.14: Forgot to mention that the cmp program needs to be copied
as well
- Section 7: Just to make sure nobody runs into problems, I added the comment
that all file systems must be unmounted and the root file system must be mounted
read-only before the computer is rebooted
- Section 7.2: Added the --local-prefix=/usr/gcc2723 switch to the configure
command line
- Section 11.7: Fixed a typo in one of the programs: patchchk should be pathchk
- Section 11.9: Added compilation and copying of the mkswap program
1.1 - December 20th, 1999
- Fixed a few typos
- Modified section 18 (Configuring system for Internet) from just a reference
to the ISP-Hookup-HOWTO to a basic explanation on how to setup Internet
- Fixed error in /etc/syslog.conf (in section 12.8.2)
1.0 - December 16th, 1999
There are two mailinglists you can subscribe to. The lfs-discuss and the
lfs-announce list. The former is an open non-moderated list discussing anything
that has got anything to do with this HOWTO (asking questions, inform about
mistakes in this HOWTO and so on). The latter is an open moderated list. Anybody
can subscribe to it, but you cannot post messages to it (only the moderator(s)
can). This list is primarily used for announcements of new versions of the
HOWTO.
If you're subscribed to the lfs-discuss list you don't need to be subscribed
to the lfs-announce list as well. Everything that is sent over the lfs-announce
list is also sent over the lfs-discuss list.
Subscribing
To subscribe to a list, send an email to
[email protected] and type in the body either subscribe
lfs-discuss or subscribe lfs-announce
Majordomo will send you a confirmation-request email. This email will contain
an authentication code. Once you send this email back to Majordomo (instructions
are provided in that email) you will be subscribed.
Unsubscribing
To unsubscribe from a list, send an email to
[email protected] and type in the the body
either unsubscribe lfs-discuss or unsubscribe lfs-announce
Direct all your questions preferably to the mailinglist. If you need to
reach me personally, you can reach me, Gerard Beekmans, at
[email protected]
Next
Previous
Contents