We need some thermite…

Time goes and it is that time of year where Linaro Enterprise Group is working on a new release. And as usual jokes about lack of thermite starts…

Someone may ask “Why?”. Reason is simple: X-Gene 1 processor. I think that it’s hateclub grows and grows with time.

When it was released it was a nice processor. Eight cores, normal SATA, PCI Express, USB, DDR3 memory with ECC etc. It was used for distribution builders, development platforms etc. Not that there was any choice 😀

Nowadays with all those other AArch64 processors on a market it starts to be painful. PCI support requires quirks, serial console requires patching etc. We have X-Gene1 in Applied Micro Mustang servers and HPe Moonshot M400 cartridges. Maybe officially those machines are not listed as supported but we still use them so testing a new release work there has to be done.

And each time there are some issues to work around. Some could probably be fixed with firmware updates but I do not know do vendors still support that hardware.

So if you have some spare thermite (and a way to handle that legally) then contact us.

How much RAM/HDD is enough?

During recent discussions we got into common developer problem — there is no such thing as enough disk space… Later it also expanded to RAM size.

My current desktop machine has 4GiB of memory and two hard disks with 820GB (763GiB real) of total capacity. And I have only 90GiB of free space on them. So what took most of space? Usual suspects: Poky and OpenEmbedded builds (du -hs took one hour with “160GiB used” result).

Which get us back to the subject — how much disk space is enough today for development? It depends on area — some people will be fine with less then 100GB, some not. Laptop which I will soon send back to Intel has only 80GB hdd and this is really not enough for me for Poky development (if it has to be the only machine). I know that few persons started to look for 320GB (or larger) disks for their laptops ;D

OK, with “rm_work” class I was able to do Poky builds with few gigabytes of free space. But small hard drive forced me to forget about using VirtualBox for testing in other distributions then Debian ‘sid’ (which I use on all machines). Currently ~/.Virtualbox on my desktop uses about 70GiB as I have there Fedora 8, Fedora 9, Ubuntu 8.04 and few other distributions which I use for testing does Poky works under them.

Other thing is doing strange builds… In past I did lot of them — record one took 270GiB of space (and two weeks of building). And I do not like to be space limited when doing them (“rm_work” is not always good way). I still plan to make such big ones from time to time as they allow to check does everything works (and also show new bugs to fix).

But how much RAM is enough? My previous desktop had 2.1GiB RAM, laptop which I use for x86 builds has only 1GiB. Current desktop has 4GiB of DDR2 (low price made it affordable) and for OpenEmbedded or Poky builds it is more then enough (as no one use BitBake from times when 512MiB ram was not enough to just parse metadata). My machine usually maxx at 2.5-3GiB of used memory during heavy builds. When it will be not enough… I still have 2 slots for RAM free 🙂

How it is for other people?

Building Poky Linux under commercial GNU/Linux distributions

During last month I did testing how building Poky Linux works under few commercial GNU/Linux distributions. Due to costs I used their free versions (CentOS instead of RHEL and OpenSUSE instead of SLED).

CentOS 5.1

First was CentOS 5.1 as someone asked does Poky works under newest RHEL distribution. With VirtualBox it was easy to start with. But CentOS installation over network is total CRAP. You have to enter HTTP mirror name by hand, then (also by hand) enter path on server… Doing such installations on real hardware definitely require having second machine or long preparation. Of course you can also use CDs as install media. But then better burn all 6 of them or be surprised that #2 is needed for few packages…

But finally I installed it and landed in 2006 software… Out of box CentOS does not have required packages or have them in so old versions that search for unofficial repositories or compile software by hand is required.

Two days later (time of build) I had “poky-image-sato” and “poky-image-sdk” built. But QEmu does not want to work on this distribution so I had to say goodbye to binary locales generation.

OpenSUSE 10.3

Second one was OpenSUSE 10.3 version. This one also has network install CD which require entering name of HTTP mirror and path. But here I got few new surprises… First it ask for IP address of server but accept normal name. Second was that when I made mistake in path it ask them again but gave me old values so I only had to fix instead of typing whole path.

After installation I had to add some packages but this time no extra repositories were needed. OpenSUSE lack gcc 3.x so we added gcc-native 3.4.4 into Poky and QEmu binary locale generation was working.

Summary

Free versions of commercial distributions require a bit of time to install all required packages but then building Poky Linux under them is working like it should (except QEmu problem under CentOS).

Zaurus kernel config generation

During last months I did few attempts to unify kernel configuration for all PXA Zaurus models (so no collie). As last one did not generate working ones and I do not have time to fix it (or devices for testing) I decided to release last version so maybe someone will look at it and try to get it fixed.

To generate configuration files run make.