embedded linux distributions, a few thoughts
From: David N. Welton (davidw_at_eidetix.com)
Date: Wed, 28 Jul 2004 14:45:11 +0200
After scraping together my own little distribution, and having had a
look at what's out there, I wanted to provoke some discussion regarding
the offerings out there.
What I need (and if I need it, I can't be the only one): a high-quality,
open source distribution that I can customize and recompile from
source. It's got to be small, but not tiny, although something that
scales down would be great.
*) Debian/EmDebian - I'm a debian developer, so my first thoughts turned
to this group. I think the regular distribution, modulo some issues
with making timely releases, is the best there is.
The good: runs on lots of architectures, cohesive codebase that has
packages which are tested together, widely known and used. Tons of
The bad: the source format doesn't let you easily keep track of changes
you make to the deb sources so that it's easy to upgrade to a newer
version of the package when the time comes.
*) OpenEmbedded - They seem to have a lot of good ideas and smart
people, but a fiddly implementation.
The good: it's a build system that lets you create your entire
distribution, from sources, including the toolchain. They have quite a
few packages, and what seems to be a reasonable dependancy system.
The bad: it's got lots of little variables that need to be manipulated
in order to make it work. Additionally, the weird Python build system
in use is a memory hog. Apparently, they want to create their own build
system in C, but that looks likely to be a long road. Something else I
don't like is that by default it tries to use the very latest packages
out of CVS. You can set a specific cutoff date for one or more
packages, but I like the idea of working from a "known good" set of
packages that have hopefully been tested together.
*) Snapgear - I get the impression they are reasonably popular, and one
of the developers is a frequent poster to this newsgroup. I haven't
played around with it that much.
The good: it looks reasonably well integrated, and supports lots of
different systems. Seems like it builds out of the box well.
The bad: it's documentation could be improved - it leaves you a bit
confused as to what you should configure where if you don't have one of
the boards mentioned. It would be very nice
if it offered to help you set up cross compilation tools. A "standard
x86" build would be nice in order to test the distribution out. Doesn't
seem to come with a way to keep track of your own patches and upgrade
*) Denx - I didn't try this one out. I don't care for the fact that
it's based on Yellowdog, of all things and makes use of RPM's (I don't
care for .debs to be involved either, if not as packages for the host
Other things to look at? I hope this area coalesces some over time,
because there are a lot of smart things going on, but they all seem to
be lacking pieces.
One thing that I think would be useful to see in all of these is a "dump
out a quick x86 system" so that it would be easy to start trying them out.