|
Related projectsRelated projectsPosted May 20, 2004 8:08 UTC (Thu) by dank (subscriber, #1865)Parent article: Learning with Linux From Scratch LFS is great stuff. Its focus on good documentation is wonderful. However, once you learn what LFS teaches, and you want to use it in a production environment, you really want to have an automated build process stored in a source code control system, not a book. (At least I do. Having an automated build means being able to sleep at night without worrying you forgot a step...) It's worth mentioning two projects with similar "build it all from scratch" goals as LFS, but which focus on automated rather than manual build. ptxdist is a tiny, 100% cross-compiled distribution of Linux by Robert Schwebel. Without any chroot'ing or rebooting, it builds an entire small Linux system from pristine source tarballs with the bare minimum set of patches. crosstool is my smallish shell script that builds a gcc/glibc toolchain entirely from pristine source taballs with the bare minimum set of patches. It supports most recent or interesting binutils, gcc, and glibc versions, and just about every CPU type glibc supports. If you're so inclined, you can easily use it to build Linux-targeted distributed compile farms regardless of whether your workstations run Linux, Windows, MacOSX, or Solaris. Lots of folks who normally would prefer downloading a precompiled toolchain are finding that it's easy to build their own with crosstool. The two independent projects share a common patch repository containing just the bare minimum patches for gcc, glibc, and binutils to get the toolchain to compile and work (many are simply small patches pulled from the upstream cvs).
(Log in to post comments)
For a full distribution, try Gentoo Posted May 20, 2004 12:33 UTC (Thu) by Duncan (guest, #6647) [Link] Then of course, when one wants a full distribution with an automated buildprocess but still self compileable, one can turn to the source based meta-distribution, Gentoo. Or, go the other way, and move to Gentoo from a traditional binary distribution, as many do when they want more control. Gentoo supplies the first part, the staticly compiled host system, for you, as a bootable LiveCD, or you can do the chroot thing and build from an existing host system (as I'm doing). In either case, if one chooses a stage-one install, the initial stage-one tarball includes the first statically compiled base system utils (as necessary for configuring and compiling the rest of the system), device nodes, boot scripts, file system layout, and GCC. One compiles the second round of the base tools from there, after which you are at stage-two (also available in tarball form, for those that don't want to bother with the basics). From there, one compiles the base system applications for which there isn't a lot of alternative (including things like perl, python, the manpage system, etc), ending up at stage three (again also available as a tarball, for those wishing to take the simple shortcut route). A stage-three Gentoo system has all the basics for which there is little choice, but remains barely functional, not even including a syslogger, as there are several choices available. However, this is where life gets interesting, as one can begin to make choices on packages, not just the features to include on packages that MUST be installed. This is where Linux from Scratch and other basic systems leave off, but it's where Gentoo really begins, as one now chooses the packages for the rest of their system, and compiles and installs them, using Gentoo's source based but automated and dependency checked Portage build system, with its two base commands, emerge, which does the high-level stuff such as dependency checking, and ebuild, generally called by emerge, but also usable on its own, to fetch, unpack, configure, compile, and install, individual packages. The latter command, ebuild, is especially useful for those wishing to do additional customization either to the applied patches, or to the configure and compile, before installation. I'm personally in the process of moving from Mandrake to Gentoo, because I wanted the faster availability and more continuous upgrade cycle of Gentoo, and was ready for the greater level of control and higher level of configurability it offered. (Tho Mandrake isn't to bad itself, if one chooses to compile from SRPM rather than install the binaries directly, and then takes advantage of the additional configuration options available when doing so, and if one runs x86. However, availability of upgrades still lags, on anything but x86, the big reason I'm switching, as I run x86_64 aka AMD64, rather less well supported by Mandrake, to date, with KDE 3.2 missing on the platform well after KDE 3.2.1 was released upstream, tho it's available now.) Duncan (Hard at the process of discovering the advantages and rising to the challenges of a new-to-him distribution! =:^)
Related projects Posted May 21, 2004 8:48 UTC (Fri) by ca9mbu (subscriber, #11098) [Link] If you're after an automated way of installing LFS then I'd like to recommend nALFS. It is intended that this will become the primary testing tool for LFS releases, in order to maintain the quality of our releases across a range of architectures. Although this automates the install, it doesn't provide any kind of package management. For that, BLFS outlines some of the issues involved, and points the avid reader to the Hints project where several package-management tools are discussed in more detail.Regards, Matt Burgess LFS Coordinator.
|
Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds
Powered by Rackspace Managed Hosting.