Building LFS without gcc, make, etc.

lanas lanas at
Tue Apr 12 03:05:05 PDT 2005

On Tue, 12 Apr 2005 11:14:29 +0200
Winter Andreas <andreas.winter at> wrote:

> Yes, good book. I have followed the book and everything worked. But
> now I want to end up whith a system without any development tools. Of
> course I can try to manually remove gcc, etc after the build. 
> And remember: "It's your distro".

What I'm doing is, to pack the resulting files of every package
that's been built into an bz2 archive.  This means that at the end of
chapter 6 I have a complete system represented by a series of bz2 files
(along with a complete system on one partition), each bz2 file
containing the 'binary' files from one installed package.

Now, when I want to build a smaller system I unpack only a subset of
these bz2 files on another partition (or on a hard disk
temporarily connected to the host).  A script file with a list of
bz2 files takes care of that.

So, to produce these bz2 files in the first place I do before executing
the instructions to build a package:

pushd /
find . > before

After one package is built I do:

pushd /
find . > after
diff before after > packageName.contents

And then a bit of grep on the .contents file gives the names of
the files that were installed.  This is then fed into tar:

tar -T packageName.contents -cjf packageName-bin.tar.bz2

All system configuration steps are scripted and can be 'replayed'
according to a main configuration file after the unpackaing of all bz2

This system is quite basic and could be extended.  For instance the
script to do any basic configuration for a package could be stored into
the archive and replayed after unpacking.

Hope this gives you some ideas.



More information about the lfs-support mailing list