Online image builder available for angstrom

Hi,

After a few weeks of hacking and testing I am proud to announce the online image builder:

http://amethyst.openembedded.net/~koen/narcissus

You can select a machine and packages you want and the image builder will create a tar.bz2 image using the packages available in the feeds. That means you can create an up-to-date image at anytime from anywhere!

The autobuilder tries to keeps the feeds populated for all machines evenly, but some packages aren't in all feeds, e.g. kismet is missing from the armv7a feeds since it breaks with gcc 4.3.x. When that happens the image builder will display a big red X on the screen next to the package that failed to install. It will continue to install the other packages you selected so you can still use generated image, but without the missing packages.

If you have suggestions, feedback or bugreports, send a mail to the angstrom-devel mailinglist.

The source is available from:

http://dominion.thruhere.net/git/?p=narcissus.git;a=summary

Patches welcome, especially to improve the look & feel

regards,

Koen

That’s extremely awesome Koen! Hatsoff and thanks a ton!

Thanks very much for putting this together. It is, in a word,
awesome. :slight_smile:

I'm trying it out right now; I've download an image and it's booting.
I didn't realise how many kernel modules there were. Maybe next time
I won't select the 'All kernel modules' option...

-Richard

This is pretty much awesome and thanks a bunch. Just a few quick
questions I am quite new at this. I want to build an image, but what
would I choose to use for my base system? Then once I am done building
the image, do I just copy the file to the ext3 partition on my SD card
or can I copy it to a flash drive and copy it to the beagleboard
desktop and then untar it? Much help would be appreciated. Thanks.

Just to clarify, this builds an archive that can be extracted on the
SD card linux partition to create the file system, isn't it?

And where can I find doc about each package? For instance, what's in
task-boot, task-base, task-base-extended, toolchain, busybox
replacement?

I see that OpenCV is here, but not GSL. Can I compile it myself and
install it, then link my application with it, all of it cross-
compiled, and then hope it will work?

Thanks
Brice

Really great Koen!
I'll try it as soon as possible!

I don't like OE but this is indeed awesome!

Just to clarify, this builds an archive that can be extracted on the
SD card linux partition to create the file system, isn't it?

Yes. If you build for beagleboard it will also generate a raw image you can dd into a 1GB sd card to get the FAT stuff and partitionion right. After dd'ing the image remove and re-insert the card and it's ready for the tarball to get extracted to the second partition. I couldn't get genext2fs or loopmounting ext2 volumes to work properly with fakeroot, so sadly no ready-to-flash SD imags.

And where can I find doc about each package? For instance, what's in
task-boot, task-base, task-base-extended, toolchain, busybox
replacement?

There have been a few updates to the page:

* at the page selection page the task-boot,base,base-extended section links to the package repository browser which lists descriptions, versions and dependencies
* at the progress page every single package links to the the package repository browser as well.

Someone with php and js knowledge could have the image builder query the repository browser on mouseover so people get up to date info without needing to visit another page.

I see that OpenCV is here, but not GSL. Can I compile it myself and
install it, then link my application with it, all of it cross-
compiled, and then hope it will work?

If you use the right toolchain, yes. Another option would be to build GSL on the beagle.

regards,

Koen

Thanks for the clarification and the improvements on Narcissus.

My goal is to get the minimum packages required to get the card
running with a command line OS, the compiler and development tools,
and an ethernet via USB connection with SSH server.

I tried with the following three packages: task-base, task-native-sdk
(Toolchain) and task-proper-tools (busybox replacement). It boots
properly, but:

1) gcc complains that it cannot find cc1:
"gcc: error trying to exec 'cc1': execvp: No such file or directory".
I was trying to compile a simple hello.c program

2) No network connection
How can I get the Ethernet-USB adapter to work?
I tried to add eth0 with ifconfig but it says no such device, idem
with eth1 and eth2
By the way, is there no DHCP client?
dmesg reports:
"new full speed USB device using musb_hdrc and address 7.
configuration #1 chosen from 1 choice"

Regards

Brice
National University of Singapore

My post appeared on the group so many hours after that I posted it,
that I painfully managed to solve my issues alone.

First I fixed the USB-Ethernet problem by making another image, this
time including all modules. I used udhcpc to configure it (just typed
"udhcpc" and it found the right interface and configured it).

Then I could install package cpp using the following commands:
opkg update
opkg install cpp

Koen: maybe you need to include package cpp in the dependencies for
your Toolchain check box on Narcissus.

Today I'll try compiling GSL and my code. I'll let you know. Once I'm
done I'll right a nice "get started with C" tutorial and will post it
here.

Brice