<html><head><style type='text/css'>p { margin: 0; }</style></head><body><div style='font-family: Arial; font-size: 12pt; color: #000000'>I haven't used Buildroot and I did not know that Crosstools-NG was available.&nbsp; I should look into these.<br><br>Most people just want to use the system, but I think that the information should be available for anyone who wants to do it themselves.&nbsp; The more widely disseminated, the better.<br><br>----- Original Message -----<br>From: "Michael J. Hammel" &lt;mjhammel@graphics-muse.org&gt;<br>To: "CLUE technical discussion" &lt;clue-tech@cluedenver.org&gt;<br>Sent: Friday, October 15, 2010 10:36:44 AM<br>Subject: Re: [clue-tech] Linux from scratch<br><br>On Fri, 2010-10-15 at 09:13 -0700, mike havlicek wrote:<br>&gt; Anyway, what was the proposition? So is Linux from scratch a cookbook<br>&gt; project? <br><br>The official LFS is a cookbook, yes. &nbsp;There is also a cookbook for doing<br>a cross-compiled LFS, known as CLFS. &nbsp;The goal is to bring up a system<br>with the basic utilities. &nbsp;Variations on LFS add additional, usually<br>slightly more complicated, tools. &nbsp; You don't have to use "make" to<br>create your LFS system but most of the recipes reference "make" because<br>the source being compiled by the recipe requires it. &nbsp;So it kind of<br>makes sense to create a build system for LFS based on "make" (the<br>bitbake people would argue this point, of course :-)<br><br>Building a "distribution" requires creating an install environment<br>(kernel and root filesystem) that then installs packages into a chroot'd<br>directory tree so that when the install finishes and the installed stuff<br>boots every file is known to the package management system. &nbsp;Well,<br>that's it in a nutshell but it may be a bit more than that.<br><br>Interestingly, most of the LFS stuff is easy to do now with tools like<br>Buildroot. &nbsp;When you build from scratch you are building a compiler<br>toolchain (a set of tools used to build everything else for your target<br>hardware), a kernel, a root filesystem and then any additional<br>components to add to the root filesystem. &nbsp;Buildroot can do all of this<br>though I typically do the toolchain and kernel separately and use<br>Buildroot just for the root filesystem.<br><br>If you do cross compiling you can first use tools like Crosstools-NG to<br>get the compiler toolchain and then use Buildroot to build everything<br>else. &nbsp;This is roughly how my build system for BeagleBox works.<br><br>The reasons for learning these tools become obvious if you start working<br>with small embedded devices. &nbsp;And don't let "embedded" scare you off.<br>BeagleBoard, for example, is just a small device very similar to any PC<br>motherboard that boots (at least by default) from an SD card formatted<br>with the kernel and a root filesystem that is a compressed tar file<br>(which Buildroot can create for you). &nbsp;Not particularly complex. &nbsp;But<br>fun to play with.<br>-- <br>Michael J. Hammel &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Principal Software Engineer<br>mjhammel@graphics-muse.org &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; http://graphics-muse.org<br>------------------------------------------------------------------------------<br>Osteopornosis: A degenerate disease.<br><br>_______________________________________________<br>clue-tech mailing list<br>clue-tech@cluedenver.org<br>http://cluedenver.org/mailman/listinfo/clue-tech<br></div></body></html>