Yocto Project: Build Your Own Custom Embedded Kernel Image
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. The first official release (Yocto Project 1.0) has been made available on the 6th of April 2011.
See this short video presentation of the Yocto Project which explains its goals.
It’s a complete embedded Linux development environment with tools, metadata, and documentation – everything you need such as emulation environments, debuggers, an Application Toolkit Generator, etc…
It is not a new build system however such as buildroot, instead it relies on the Poky build tools that provide an open source development environment targeting the ARM, MIPS, PowerPC and x86 architectures.
Here’s what the Yocto Project provides:
- A recent Linux kernel along with a set of system commands and libraries suitable for the embedded environment.
- System components such as X11, Matchbox, GTK+, Pimlico, Clutter, GuPNP and Qt (among others) so you can create a richer user interface experience on devices that use displays or have a GUI. For devices that don’t have a GUI or display you simply would not employ these components.
- A focused and stable core compatible with the OpenEmbedded project with which you can easily and reliably build and develop.
- Support for a wide range of hardware and device emulation through the QEMU Emulator.
- A host system running a supported Linux distribution (i.e. recent releases of Fedora, OpenSUSE, Debian, and Ubuntu).
- The right packages.
- A release of Yocto Project such as http://www.yoctoproject.org/downloads/poky/poky-bernard-5.0.tar.bz2
The Yocto Project was also widely discussed at the Embedded Linux Conference in April 2011 (Click on links to download presentation slides):
- Yocto Project: Practical Kernel Development Tutorial by Darren Hart (Intel) – No slide available.
- The Yocto Project and its Application Development Toolkit (ADT) – The Answer to Effective Embedded Application Development by Dave Stewart (Intel)
- Integrating OpenEmbedded and Yocto by Koen Kooi (Texas Instruments)
- Building Custom Embedded Images with Yocto by Tom Zanussi and Saul Wold
- Delivering Predictability: The Yocto Project Autobuilder, Automated Sanity Testing, License Collection, and Build Statistics Tracking by Elizabeth Flanagan (Intel)