Difference between revisions of "Yocto Project"

From eLinux.org
Jump to: navigation, search
(Talks)
(Added some information and a more detailed description about yocto)
Line 1: Line 1:
{{Incomplete}}
+
== Overview ==
The uninitiated can have trouble figuring out what Yocto actually ''is''. It is an umbrella project/governing group for a set of tools that allow someone to build and use an embedded Linux image.
+
The Yocto Project is an project that intends to provide an OpenSource build system, based on top of Poky and [[Open Embedded]], that enables developers to create their own linux distribution specific to their environment.
 +
To ease this even further, Yocto offers some templates of different sizes (tiny to fullblown), which the developer can adapt (extend or shrink) by the simple means of editing some configuration files.
  
The developer downloads a version of [http://www.pokylinux.org/ poky linux] which uses bitbake/[[Open Embedded]] to download and/or build a toolchain, libraries, a kernel, applications, programs, and images.
+
Internally Yocto uses bitbake recipes which are quite similar to Gentoo's ebuild system, so adding new packages or modifying packages is quite easy.
  
From the Yocto web site:
+
When Yocto is then run, it takes care of fetching the sources, compiling, packaging and creating the image, but also provides the developer with a toolchain for cross compilation and a Application Developer Kit (ADK) tailored to his own distribution.
<pre>  The Yocto Project is an open source collaboration project that provides templates, tools and methods
+
Depending on the configuration, the created image can then be deployed directly onto the target hardware or emulated via [[qemu]].
  to help you create custom Linux-based systems for embedded products regardless of the hardware
+
 
  architecture.</pre>
+
Unfortunately Yocto currently leaves out the [[bootloader]] part of the system, "as this should be provided by the board vendor".
 +
 
 +
A quick overview of Yocto's internal flow can be found here: [ http://www.yoctoproject.org/docs/current/yocto-project-qs/figures/yocto-environment.png Yocto Flow (Getting Started Guide) ]
 +
 
 +
It currently supports x86, x86_64, [[ARM]], [[PowerPC]] and MIPS.
 +
 
 +
Yocto intends to work closely with the upstream projects - e.g. updating the kernel at least once every 6 months for regular releases, but also providing the possibility to run the latest git version of the kernel - and tries to be software and vendor agnostic - thus you can e.g. choose which package manager format you intend to use in your embedded linux distribution (deb, rpm, ipkg).
 +
 
 +
Yocto has also an excellent integration into the Eclipse IDE, and allows you to do most of the necessary steps from within Eclipse.
  
The main web site is at: http://www.yoctoproject.org/
 
  
 
== Getting Started ==
 
== Getting Started ==
Line 16: Line 24:
  
 
== History ==
 
== History ==
The Linux Foundation announced the Yocto Project in October, 2010 at
+
* The Linux Foundation announced the Yocto Project in October, 2010 at
 
[http://www.embeddedlinuxconference.com/elc_europe10/index.html Embedded Linux Conference Europe 2010]
 
[http://www.embeddedlinuxconference.com/elc_europe10/index.html Embedded Linux Conference Europe 2010]
  
Version 1.0 was released on April 6, 2011.
+
* Version 1.0 was released on April 6, 2011.
 +
* Version 1.1 was released on 21 Oct 2011 and was presented during the ELCE 2011
 +
 
 +
* Yocto is sponsored by the Linux Foundation.
 +
* Yocto technology derives from Poky Linux, which was a branch of [[Open Embedded]]
  
Yocto technology derives from Poky Linux, which was a branch of [[Open Embedded]]
 
  
 
== Talks ==
 
== Talks ==
 
*[[Elc2011BoF_YoctoNotes]]
 
*[[Elc2011BoF_YoctoNotes]]
 
*[[Media:elce11_stewart.pdf|Developing Embedded Linux Devices Using the Yocto Project and What's New in 1.1]] Talk by David Steward (Intel) at [[ELCE 2011 Presentations]]
 
*[[Media:elce11_stewart.pdf|Developing Embedded Linux Devices Using the Yocto Project and What's New in 1.1]] Talk by David Steward (Intel) at [[ELCE 2011 Presentations]]
 +
 +
* [http://www.youtube.com/embed/W3IXTdajqH4 An Introduction to the Yocto Project 1.1 Release Hob] (Video)
 +
* [http://www.yoctoproject.org/blogs/davest/2011/meet-edison-yocto-project-v1.1-release David's Notes about Yocto 1.1]
 +
* [http://www.yoctoproject.org/documentation/presentations Collection of presentations about yocto]
 
[[Category:Yocto]]
 
[[Category:Yocto]]
 
[[Category:Embedded Linux Platforms]]
 
[[Category:Embedded Linux Platforms]]

Revision as of 10:24, 28 October 2011

Overview

The Yocto Project is an project that intends to provide an OpenSource build system, based on top of Poky and Open Embedded, that enables developers to create their own linux distribution specific to their environment. To ease this even further, Yocto offers some templates of different sizes (tiny to fullblown), which the developer can adapt (extend or shrink) by the simple means of editing some configuration files.

Internally Yocto uses bitbake recipes which are quite similar to Gentoo's ebuild system, so adding new packages or modifying packages is quite easy.

When Yocto is then run, it takes care of fetching the sources, compiling, packaging and creating the image, but also provides the developer with a toolchain for cross compilation and a Application Developer Kit (ADK) tailored to his own distribution. Depending on the configuration, the created image can then be deployed directly onto the target hardware or emulated via qemu.

Unfortunately Yocto currently leaves out the bootloader part of the system, "as this should be provided by the board vendor".

A quick overview of Yocto's internal flow can be found here: [ http://www.yoctoproject.org/docs/current/yocto-project-qs/figures/yocto-environment.png Yocto Flow (Getting Started Guide) ]

It currently supports x86, x86_64, ARM, PowerPC and MIPS.

Yocto intends to work closely with the upstream projects - e.g. updating the kernel at least once every 6 months for regular releases, but also providing the possibility to run the latest git version of the kernel - and tries to be software and vendor agnostic - thus you can e.g. choose which package manager format you intend to use in your embedded linux distribution (deb, rpm, ipkg).

Yocto has also an excellent integration into the Eclipse IDE, and allows you to do most of the necessary steps from within Eclipse.


Getting Started

Getting Started (from the project website)

History

  • The Linux Foundation announced the Yocto Project in October, 2010 at

Embedded Linux Conference Europe 2010

  • Version 1.0 was released on April 6, 2011.
  • Version 1.1 was released on 21 Oct 2011 and was presented during the ELCE 2011
  • Yocto is sponsored by the Linux Foundation.
  • Yocto technology derives from Poky Linux, which was a branch of Open Embedded


Talks