Yocto Project 1.2 - Poky 7.0.y denzil

From IGEP - ISEE Wiki

Revision as of 17:52, 7 October 2013 by Agustí Fontquerni (talk | contribs)

Jump to: navigation, search

Introduction

This article is for Yocto Project 1.2 - Poky 7.0.y denzil branch.
It is interesting read How to use the Yocto Project to develop Embedded Linux article previously.

Build Platform Setup Environment

NOTE: The instructions below are only for IGEP PROCESSOR BOARDS based on OMAP3 processor. CHOOSE YOUR BUILD SYSTEM BASED ON THE SUPPORTED PLATFORM

In order to build an image with BSP support for a given release, you need to download the corresponding BSP repository.
At this time latest stable branch for IGEP devices is denzil.

 $ git clone -b denzil git://git.isee.biz/pub/scm/poky.git

Enter to the poky directory,

 $ cd poky

and clone the meta-isee layer.

 $ git clone -b denzil git://git.isee.biz/pub/scm/meta-isee.git
 $ source oe-init-build-env

Having done that, and assuming you downloaded the BSP contents at the top-level of your yocto build tree, you can build a igep image by adding the location of the 'meta-isee' layer to 'bblayers.conf'

Add below line into .../poky/build/conf/bblayers.conf:

       <path to>/poky/meta-isee \

To enable the isee layer, add the 'igep00x0 MACHINE' to .../poky/build/conf/local.conf:

 MACHINE ?= "igep00x0"

You should then be able to build a image as such:

 $ bitbake demo-image-sato

At the end of a successful build, you should have an image that you could use for boot device from flash or a micro-SD card.

Extending the available packages with others layers

You can append more layers to your environment in order to build more packages, in following wxample you'll download the meta-openembedded layer. In your poky directory

 $ git clone -b denzil git://git.openembedded.org/meta-openembedded

Add the layer into build/conf/bblayers.conf:

       <path to>/poky/meta-openembedded/meta-oe \

Now you can build any of the new packages added, for example:

 $ bitbake postgresql

Create your own Linux image

TODO

Yocto 1.2 'denzil' documentation

Official documentation

Notes

Ubuntu 13.04

WARNING: Host distribution "Ubuntu 13.04" has not been validated with this version of the build system; you may possibly experience unexpected failures. It is recommended that you use a tested distribution (see yocto validated distributions from yoctoproyect.org).

Although denzil branch is not validated for "Ubuntu 13.04", we have successfully build denzil images with this distribution, see notes below:

Note 1: If you get the following error, or similar:

NOTE: package prelink-native-1.0+git1+7b47f2f8a15ed13b7905bc120bb2586f3e164f7d-r9: task do_fetch: Started
WARNING: Failed to fetch URL git://git.yoctoproject.org/prelink-cross.git;protocol=git
ERROR: Fetcher failure: Fetch command export HOME="..."; export SSH_AGENT_PID="2230"; export SSH_AUTH_SOCK="..."; export GIT_CONFIG="..."; git remote add --mirror=fetch origin git://git.yoctoproject.org/prelink-cross.git could not be run:

Remove the local build of git-native

bitbake git-native -c cleanall

and assume as provided adding the following line to conf/local.conf

ASSUME_PROVIDED += "git-native"

Note 2: If you get the following error, or similar:

INSTALL net/netfilter/xt_policy.ko
|   MKDIR   .../tmp/work/igep00x0-poky-linux-gnueabi/linux-igep-2.6.37-r6/image/lib/firmware/edgeport/
| make[1]: *** No rule to make target `.../image/lib/firmware/./', needed by `.../whiteheat_loader.fw'.  Stop.
| make[1]: *** Waiting for unfinished jobs....
| make: *** [_modinst_post] Error 2
| ERROR: oe_runmake failed
NOTE: package linux-igep-2.6.37-r6: task do_install: Failed

Remove the local build of make-native

bitbake make-native -c cleanall

and assume as provided adding the following line to conf/local.conf

ASSUME_PROVIDED += "make-native"