Difference between revisions of "How to use the Yocto Project to develop Embedded Linux"

From IGEP - ISEE Wiki

Jump to: navigation, search
(Created page with '= How to use the Yocto Project to develop Embedded Linux = The Yocto Project™ is an open source collaboration project that provides templates, tools and methods to help you cr…')
 
(Add new article How to use the Yocto Project to develop Embedded Linux)
Line 6: Line 6:
 
'''Yocto Project™ it's not an embedded Linux distribution – it creates a custom one for you'''
 
'''Yocto Project™ it's not an embedded Linux distribution – it creates a custom one for you'''
  
The Yocto Project™ is an umbrella project covering a fairly wide swath of embedded Linux technologies an distributions. For example, the '''[http://www.angstrom-distribution.org/ Angstrom Distribution ]'''is declared as a [https://www.yoctoproject.org/organization/angstrom-distribution Yocto Project Participant]
+
The Yocto Project™ is an umbrella project covering a fairly wide swath of embedded Linux technologies an distributions. For example, the [http://www.angstrom-distribution.org/ Angstrom Distribution ] is declared as a [https://www.yoctoproject.org/organization/angstrom-distribution Yocto Project Participant]
  
 
Much of this How-To is extracted from different sources. If you would like to read some of the original articles or resources, please visit them and thank the authors:  
 
Much of this How-To is extracted from different sources. If you would like to read some of the original articles or resources, please visit them and thank the authors:  
Line 87: Line 87:
 
*[[How to get the Linaro distribution]]  
 
*[[How to get the Linaro distribution]]  
 
*[[How to get the Android distribution]]  
 
*[[How to get the Android distribution]]  
*[[How to get the Meego distribution]]
 
  
 
[[Category:Software_distributions|Yocto]]
 
[[Category:Software_distributions|Yocto]]

Revision as of 13:47, 26 July 2013

How to use the Yocto Project to develop Embedded Linux

The Yocto Project™ is an open source collaboration project that provides templates, tools and methods to help you create custom Linux-based systems for embedded products regardless of the hardware architecture. Taken directly from the Yocto Project website:

Yocto Project™ it's not an embedded Linux distribution – it creates a custom one for you

The Yocto Project™ is an umbrella project covering a fairly wide swath of embedded Linux technologies an distributions. For example, the Angstrom Distribution is declared as a Yocto Project Participant

Much of this How-To is extracted from different sources. If you would like to read some of the original articles or resources, please visit them and thank the authors:

Overview of How-To

This How-To is meant to be a starting point for people to learn build and run Yocto-based images for IGEP Technology devices as quickly and easily as possible.

Why use the Yocto Project™

Because it's a complete embedded Linux development environment with tools, metadata, and documentation - everything you need. The free tools are easy to get started with, powerful to work with (including emulation environments, debuggers, an Application Toolkit Generator, etc.) and they allow projects to be carried forward over time without causing you to lose optimizations and investments made during the project’s prototype phase. The Yocto Project fosters community adoption of this open source technology allowing its users to focus on their specific product features and development

Build Platform Setup Environment

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-igep' 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

See also