OpenEmbedded
First you need to get angstrom setup scripts, it’s a couple of scripts which are usefull to fetch git repositories of openembedded, angstrom and others usefull meta layers.
mkdir a1000 && cd a1000
git clone git://github.com/Angstrom-distribution/setup-scripts.git
Then you need to get the meta layer for the allwinner processor. This layer contains recipes for the bootload (u-boot) and the kernel. We will not use u-boot and kernel in the final image, but it’s better to have them for the future.
mkdir -p setup-scripts/sources && cd setup-scripts/sources git clone git://github.com/ebutera/meta-allwinner cd ..
We have to add the allwinner meta layer in the list of meta layers in use, so edit the file conf/bblayers.conf abd add ${TOPDIR}/sources/meta-allwinner to the BSPLAYERS variable.
it should looks like this :
BSPLAYERS ?= " \
${TOPDIR}/sources/meta-ti \
${TOPDIR}/sources/meta-efikamx \
${TOPDIR}/sources/meta-nslu2 \
${TOPDIR}/sources/meta-smartphone/meta-htc \
${TOPDIR}/sources/meta-smartphone/meta-nokia \
${TOPDIR}/sources/meta-smartphone/meta-openmoko \
${TOPDIR}/sources/meta-smartphone/meta-palm \
${TOPDIR}/sources/meta-handheld \
${TOPDIR}/sources/meta-raspberrypi \
${TOPDIR}/sources/meta-intel \
${TOPDIR}/sources/meta-intel/meta-sugarbay \
${TOPDIR}/sources/meta-intel/meta-crownbay \
${TOPDIR}/sources/meta-intel/meta-emenlow \
${TOPDIR}/sources/meta-intel/meta-fishriver \
${TOPDIR}/sources/meta-intel/meta-fri2 \
${TOPDIR}/sources/meta-intel/meta-jasperforest \
${TOPDIR}/sources/meta-intel/meta-n450 \
${TOPDIR}/sources/meta-allwinner \
"
Now it’stime to use angstrom script to retrieve all oe sources. In the top directory launch
./oebb.sh config allwinner-a10
it will create the file ~/.oe/environment-angstromv2012.05 wich contains environnement variables needed to correctly build an openembedded image. It will also fetch all the recipes for angstrom and openembedded and will define allwinner-a10 as the default machine. Every time you want to build a pacakge or an image for the mele, you juste have to source the file ~/.oe/environment-angstromv2012.05 and launch bitbake something.
Once it’s done, we can build our first angstrom image :
bitbake efl-nodm-image
After a long time depending on your machine, (i launched it before sleeping, and get the result back in the morning) you should find a directory build/tmp-angstrom_2010_x-eglibc/deploy/images/allwinner-a10 containing Angstrom-efl-nodm-image-eglibc-ipk-v2012.05-allwinner-a10.rootfs.tar.bz2.
Now we will use the method described here : http://www.cnx-software.com/2012/06/13/hardware-packs-for-allwinner-a10-devices-and-easier-method-to-create-a-bootable-ubuntu-12-04-sd-card/ to run our image.
Im’ using the vga output so i do : (be carful on the /dev/sdX you are using !)
wget http://dl.linux-sunxi.org/nightly/2012.09.18/mele-a1000-vga_hwpack_2012.09.18.7z ./a1x-media-create.sh /dev/sdb mele-a1000-vga_hwpack_2012.09.18.7z Angstrom-efl-nodm-image-eglibc-ipk-v2012.05-allwinner-a10.rootfs.tar.bz2
You can now try to start up with sdcard. Once image has started, you should get a ssh terminal with this command : ssh root@allwinner-a10.local (password is empty). Xorg is not working out of the box, you need to create the file /etc/modules-load.d/screen.conf on the sdcard and this content :
disp lcd hdmi 8192cu
reboot the machine, Xorg should be launche at startup now !
Bonus,
if you like to create a toolchain dedicated to the mele a1000, you can use this command :
bitbake meta-toolchain
Once finished you will find in build/tmp-angstrom_2010_x-eglibc/deploy/ a tar.gz containing all the stuff need to build applications for the mele a1000, like u-boot, kernel.