For our T20 Linux image V1.x starting from beta5 we use OpenEmbedded. We provide the recipes we use together with the OpenEmbedded classic tree.
OpenEmbedded (core) gives information on OpenEmbedded used in our V2.x images.
Filelocation: http://files.toradex.com/Colibri/Linux/OpenEmbedded/
Compare with http://www.openembedded.org/wiki/Getting_started . Check that you have installed the required software on your build machine.
The procedure below deviates from this getting started in the directory structure: Parallel to 'stuff/' we use a directory 'output/' for all output created during the build process and 'sources/' for the stuff downloaded from the internet.
NOTE: We intend to move to oe-core in one of the next revisions of our BSP. Minimize the efforts you spend on openembedded classic for use with our Colibri T20 module
NOTE: If you want to build your application with openembedded, the user manual at http://docs.openembedded.org/usermanual/usermanual.html is a good starting point on how to write recipes.
This installs OpenEmbedded in $HOME/oe
(This instructions are also available in stuff/README)
# get our configuration, our recipes cd mkdir oe cd oe wget http://developer.toradex.com/files/toradex-dev/uploads/media/Colibri/Linux/OpenEmbedded/Colibri-OpenEmbeddedV1.1Beta1_20120710.tar.bz2 tar xjvf Colibri-OpenEmbeddedV1.1Beta1_20120710.tar.bz2 # get bitbake, get openembedded classic cd stuff wget http://download.berlios.de/bitbake/bitbake-1.12.0.tar.gz tar xzvf bitbake-1.12.0.tar.gz rm bitbake-1.12.0.tar.gz ln -s bitbake-1.12.0/ bitbake git clone --no-checkout git://github.com/openembedded/openembedded.git # the revision where our patch works against cd openembedded git branch colibri be7fc55acccef17b90057f1cdec2479f5c6cb3af git checkout colibri # patch the openembedded branch patch -p 1 < ../oe.patch patch -p 1 < ../oe-V1.1.patch cd .. # patch the trdx/... V1.1Beta1 tree to V1.1 (which is the same as V1.1Beta2) wget http://developer.toradex.com/files/toradex-dev/uploads/media/Colibri/Linux/OpenEmbedded/oe-V1.1Beta2.patch patch -p 1 < ./oe-V1.1Beta2.patch # patch the trdx/... V1.1 tree to V1.2 wget http://developer.toradex.com/files/toradex-dev/uploads/media/Colibri/Linux/OpenEmbedded/oe-V1.2.patch patch -p 1 < ./oe-V1.2.patch
Edit the files export and build/conf/local.conf in oe/stuff
export: check/adapt the paths
build/conf/local.conf: check the OEHOME path, check at the end ASSUME_PROVIDED. Read through this file
# set the environment variables cd $HOME/oe/stuff source export # build the image, write console output also # to $OEHOME/build.log # NOTE: this will take hours, downloads lots of stuff and # fills $OEHOME/output, so have at least 60 GByte free. bitbake angstrom-lxde-image 2>&1 | tee $OEHOME/build.log # build a single package and all things it depends on bitbake samba
The output can be found here:
To update your Colibri Module you need the tools provided with our Linux images. e.g. if you unpacked T20_LinuxImageV1.0Beta6 in your home directory do something like this:
cd ~/T20_LinuxImageV1.0Beta6/bin cp $OEHOME/output/deploy/eglibc/images/colibri-t20/uImage-colibri-t20.bin ./ ln -fs uImage-colibri-t20.bin uImage cp $OEHOME/output/deploy/eglibc/images/colibri-t20/u-boot-colibri-t20-git-r82.bin ./ ln -fs u-boot-colibri-t20-git-r82.bin u-boot.bin cp $OEHOME/output/deploy/eglibc/images/colibri-t20/u-boot-hsmmc-colibri-t20-git-r82.bin ./ ln -fs u-boot-hsmmc-colibri-t20-git-r82.bin u-boot-hsmmc.bin cd ../rootfs sudo rm -rf * sudo tar xvf $OEHOME/output/deploy/eglibc/images/colibri-t20/LXDE-image-colibri-t20.tar cd .. ./update -h ./update.sh -r 512 -v V1_2