uClibc Buildroot

Taking a break from Puppy development for a little while ...just to let everyone know, as I might not be responsive to bug reports etc. for awhile.

I am having some fun with uClibc Buildroot:
http://buildroot.uclibc.org/

This started because I want to create a new uClib ext2 root filesystem, for whenever I need to compile an application statically.

Years ago I did experiment with building Puppy with uClibc, but there were too many packages that would not compile.

There is at least one Linux distro that uses uClibc, uClinux, see http://www.ucdot.org/, that targets embedded systems. The Gentoo people also played with the idea awhile back.

But now I am tempted, what kind of desktop system can I compile with uClibc and Buildroot? ...that's what I want to play with for awhile. It doesn't mean that we are going to end up with a revolutionary new "tinyPup"


Posted on 17 Mar 2011, 16:50


Comments:

Posted on 17 Mar 2011, 21:55 by technosaurus
uclibc distro
Alpine linux seems to be the most active x86 uclibc based distro (5 releases in last 5 months) ... I have been using Rob Landley's work at landley.net/aboriginal for a base though (adding only a few tweaks to uclibc ... mostly patches from openwrt and alpine git repos)

Unfortunately when people google for alpine they end up with the mail client

(btw their packages seem to be standard tarballs that are renamed ... probably just have some simple pre/post install stuff as in pets) Most of the _base_ system is uclibc, but iirc some desktop items use libc


Posted on 17 Mar 2011, 24:54 by BarryK
OpenBricks
This is interesting, it is based on Geexbox:

http://www.openbricks.org/

It works with menuconfig, like Buildroot, and can also use uClibc.

Note, I tried Rob Landley's source pkg 1.0.1. It kept re-downloading linux-2.6.36.tar.bz2 in an endless loop, so I have sent him an email reporting it.



Posted on 18 Mar 2011, 20:57 by BarryK
uClibc ext2 root filesystem
I have created a ext2 uClibc root filesystem, for compiling cli applications.

Readme:
http://distro.ibiblio.org/quirky/uclibc/rootfs-uclibc-readme

Buildroot .config:
http://distro.ibiblio.org/quirky/uclibc/DOTconfig-20110318-1009

Root f.s. (27.5MB):
http://distro.ibiblio.org/quirky/uclibc/rootfs-uclibc-201103.ext2.gz

...expands to 320MB.



Posted on 19 Mar 2011, 4:12 by BarryK
uClibc rootfs broken
Well, the uploaded one is. Some files needed for compiling are missing. I'll upload fixed rootfs soon.



Posted on 19 Mar 2011, 10:45 by jamesbond
good to hear this
The last time I played with buildroot, I only managed to build the staging uclibc cross-compiler but didn't manage to build the complete ext2 rootfs. My problem was - everything got built and installed into the rootfs, except the final native gcc.

I was more successful with aboriginal linux as suggested by technosaurus. I didn't experience the looping then ... perhaps the location of the download sites have changed between then and now?

But yeah ... a puppy built on top of uclibc, that would be cool :)

cheers!


Posted on 19 Mar 2011, 11:39 by BarryK
uClibc progress
I contacted Rob about the looping. Puppy is missing the 'sha1sum' utility. Rob has put in a test for it, aborts if missing. I have enabled it in Busybox, at least for the Buildroot uClibc build.

First time I tried it, I also did not get the gcc compiler etc. in the target. I posted a query on the Buildroot maillist, but messed around a bit and got it working. Well thought so, but the rootfs that I uploaded still has some files missing (like libc.so), will upload fixed version soon.

I sat up all night just about, got as far as Xorg compiled. I found that wary is not a good host, as Buildroot is very sensitive to which host Linux is running -- it seems that it is really designed for Ubuntu. This mismatch caused a lot of problems, but I finally got there.

I installed my new rootfs into a partition and can boot into it, but X just gives a black screen. So, a work-in-progress.



Posted on 23 Mar 2011, 9:43 by BarryK
Buildroot stop
Have stopped using Buildroot, see my post:

http://bkhome.org/blog/?viewDetailed=02191