[uClibc] An alternative to buildroot.
Rob Landley
rob at landley.net
Sat May 29 07:58:59 UTC 2004
It's in a very early stage yet still, but I'm applying bolts to the neck of my
old "firmware linux" distro and dragging it from the grave.
http://www.landley.net/code/firmware
I'll be moving that to a faster server in a few days, try not to hit the
current one too hard, it's on a friend's DSL line and sources.tar.gz is over
100 megabytes.
This is of interest to both the uclibc and busybox lists.
The uclibc people might be interested because the mktools-uclibc.sh script is
a simple bash script that builds a self-contained uclibc toolchain (which can
be configured to be a cross-compiler; I'll put some comments about that if
anybody really cares), All you have to do to use it is throw it in the
/tools directory (or symlink /tools to wherever it lives), and then go
"PATH=/tools/bin:$PATH" to put it at the start of your path. Then compile as
normal. (Admittedly it'll link against the uclibc and ld-uclibc in /tools
rather than in /lib, but it's an easy way to test stuff and fixing it so the
libraries and loader are in the right place shouldn't be too hard to figure
out by looking at the make-chroot-uclibc.sh bash script. It's the bit where
the spec file gets tweaked...)
This is of interest to the busybox people because it contains my effort to get
busybox working as part of a full fledged development environment, capable of
configuring and compiling all the FSF tools and everything. Before I moved
the thing to use the 2.6 headers instead of the 2.4 headers, and to use
uclibc instead of glibc, every source package mentioned in the list compiled
and seemed to work using the busybox tools in the thing. (The 2.6 headers
broke more of them then uclibc did. See the comments.)
However, in order to get all that stuff to build, you'll notice several of the
busybox utilities got replaced with the original non-busybox versions. Feel
free to put the busybox versions back and see what breaks; I believe every
breakage is pretty obvious to spot if you do them one at a time. (All build
breaks, not functional ones. Well, I haven't tried busybox awk and sh in a
while, but the rest of them were obvious...)
Also notice a couple extra problems crop up if you do things I don't try, like
running "make clean". (Busybox find cannot handle "make clean" on the
busybox source code. That's embarassing...)
I'm working to get c++ up and running so I can build python under this thing
(so I can use the oak dns server). I've already built dropbear, and uclibc
comes with a web server, so I'm halfway to being able to migrate my domain
over to a server running on this system...
Rob
--
www.linucon.org: Linux Expo and Science Fiction Convention
October 8-10, 2004 in Austin Texas. (I'm the con chair.)
More information about the uClibc
mailing list