OpenEmbedded is a software framework used for creating Linux distributions aimed for, but not restricted to, embedded devices. The build system is based on BitBake recipes, which behave like Gentoo Linux ebuilds.
|This section needs expansion. You can help by adding to it. (August 2011)|
The OpenEmbedded Project (OE for short, but mostly called OE-dev, following the name of the mailing list) was created by Chris Larson, Michael Lauer, and Holger Schurig, merging the achievements of OpenZaurus with contributions from projects like Familiar Linux and OpenSIMpad into a common codebase. OpenEmbedded superseded these projects and was used to build any of them from the same code base. Stable maintenance builds exist for the old OpenEmbedded-Classic, although most development is, or will be, based on the new OpenEmbedded-Core in the future.
The OpenEmbedded-Core Project (OE-Core for short) resulted from the merge of the Yocto Project with OpenEmbedded. This is the most recent version of OpenEmbedded and many of the OE-dev recipes are available in OE-Core. Newer versions of package recipes may only get ported for OpenEmbedded-Core.
OpenEmbedded-Core has adapted this layered structure in the merge with Yocto and new layer entries were added over time. The Layers represent a structure which is only of declarative nature. The specific entries are stricter in the scope of deciding which entry provides which packages. Overview of layers is available in: layers
- Developer layer
- The user-defined layer for custom Bitbake recipes. Embedded system software developers would place their recipe here if the software would not fit the commercial or base layer.
- Commercial layer
- Packages, plugins and configurations from open source vendors go in this layer.
- UI-specific layer
- Layers currently present within the meta-openembedded layer:
- Hardware-specific layer
- meta-efikamx (Efika devices)
- meta-fsl-arm (Freescale Semiconductor officially supported development boards)
- meta-fsl-arm-extra (Freescale Semiconductor community supported boards)
- meta-handheld (Personal digital assistants, PDAs)
- meta-intel (Intel embedded devices)
- meta-nslu2 (NSLU2 devices)
- meta-openpandora (Openpandora devices)
- meta-smartphone (various smartphone devices)
- meta-ti (Texas Instruments devices)
- meta-xilinx (Xilinx devices)
- meta-altera (Altera devices)
- OpenEmbedded-Core layer
In OpenEmbedded-Classic, the configurations from Base- to the UI-Layer can be supplemented by various Linux distributions. The following list is available for OpenEmbedded:
Various devices are supported:
- Boards and processors
- The BeagleBoard from Texas Instruments, the Gumstix, Nvidia Tegra and several I.MX devices (e.g. I.MX28 series) from Freescale Semiconductor are supported.
- Other well known boards like the PandaBoard are also supported. along with other hardware.
- Some devices of the IBM PowerPC series are supported by OpenEmbedded.
- Porting to new hardware
- The constellation of OpenEmbedded, especially the open design, allows it to get OpenEmbedded to adapt new hardware fairly easy.
- "OpenEmbedded Developers".
- Yocto & OpenEmbedded Core Layers
- "OpenEmbedded Metadata Index - layers".
- "Mailing lists".
- "Yocto Project Aligns Technology with OpenEmbedded and Gains Corporate Collaborators".
- Ben Combee on Palm Developer Forum - Fri Jul 16, 2010. Building static libs
- "Overview of OE supported machines".
- Using OpenEmbedded build system for Gumstix
- TI Gumstix OpenEmbedded development environment
- Unofficial OpenEmbedded I.MX28 support
- "OMAP Angstrom Main".
- Power.org devcon 07 OpenEmbedded presentation
- Yocto Project Board Support Package guide
- "Yocto Project Development Manual".