DistCC CrossCompiling a Gentoo Freevo Media Station

Published on Tue 18 of Apr, 2006

I wanted to do this since a long time, but always then procrastinated it. But next weekend Püppi's Igor Freevo ))MediaStation(( needs to be ready, because she comes to Ilm and wants to take it with her. So I had a very good reason to set it up now. Especially since I again procrastinated the whole project, because I don't like muddling with hardware - and Igor had to get some new guts in the form of a new mainboard.
Well, after I finally did this last Saturday (and it was pretty painless, only took about an hour or so), I started installing the latest Gentoo 2006.0. And let me tell you - the new installer is not worth a shi# - sucks completely - I lost about a complete day because of it. Going the old-school way, I was set up and running in about two hours.
This time I decided to go with a stage3 and then recompile it completely, instead of doing a plain stage1. Theoretically (and I also believe in the practical aspect ;) ) this gives you the most amazing Gentoo-system possible. Knowing, that I would still have some configuration-work in front of me, I am a little concerned still about the time, the compiles will take. A way to shorten it, would be to distribute compilations. This is especially interesting, since I have a pretty good amd64-workhorse here as my own machine. And this 64bitness also created my most used reason for delaying this DistCC-setup: I need to cross-compile. Which means, that I have to build a complete toolchain (compiler, linker, binutils, kernel-headers also) for a 32bit architecture. It now turned out, that for DistCC-cross-compiling I don't need glibc and kernel headers, but well..
The Gentoo crossdev-package proved a great help here. It emerges all the above mentioned tools suited for the target architecture. It has some flaws still, but turned out, that they can be solved with some smart linking. crossdev doesn't really know, where to look for it's own stuff. :P
I wonder, why they don't put more emphasis on this... seems, like there are not so many people cross-compiling, which actually sounds reasonable.
Setting up DistCC then, was no big problem. There's a good Gentoo tutorial on it, which solves the most common problem easily. Well, so now igor is distributedly compiling in collaboration with the x-compiling ben! :)
Benchmarks are to come, currently I'm running

currently running
# emerge -atv --update --deep --newuse world

I think, that something like glibc or qt(which is pronounced cute as I learned today) will be a good target for benchmarking.

So - anyone has a spare iPod for compiling Gentoo on it? ;P

Short Bio [toggle]

Born, went to school, started hacking on free software, did some major high availability sysadmin work in between, now back to coding PHP again and having fun with it... :) -- Long CV

Tweets [toggle]