OpenEmbedded
   HOME

TheInfoList



OR:

OpenEmbedded is a build automation framework and cross-compile environment used to create Linux distributions for embedded devices. The OpenEmbedded framework is developed by the OpenEmbedded community, which was formally established in 2003. OpenEmbedded is the recommended build system of the
Yocto Project The Yocto Project is a Linux Foundation collaborative open source project whose goal is to produce tools and processes that enable the creation of Linux distributions for embedded and IoT software that are independent of the underlying architectu ...
, which is a Linux Foundation workgroup that assists commercial companies in the development of Linux-based systems for embedded products. The build system is based on BitBake "recipes", which specify how a particular package is built but also include lists of dependencies and source code locations, as well as for instructions on how to install and remove a compiled package. OpenEmbedded tools use these recipes to fetch and patch source code, compile and link binaries, produce binary packages ( ipk, deb, rpm), and create bootable images. Historically, OpenEmbedded's collection of recipes was stored in a single repository, and the metadata was structured in a form now called "OpenEmbedded-Classic". By 2010, it had become increasingly difficult to manage the ever-growing number of recipes. To resolve this, recipe metadata was split into multiple layers. The lowest layer, which includes platform-independent and distribution-independent meta data is called "OpenEmbedded-Core". Architecture-specific, application-specific and distribution-dependent instructions are applied in appropriate target support layers that can override or complement the instructions from lower layers. Additionally, changes to the recipes at the core layer are now managed with a pull model: instead of committing their changes directly to the repository (as was previously the case), developers now send their patches to the mailing list. The patches, if approved, are then merged (pulled) by a maintainer.. The OpenEmbedded framework can be installed and automatically updated via
Git Git () is a distributed version control system: tracking changes in any set of files, usually used for coordinating work among programmers collaboratively developing source code during software development. Its goals include speed, data in ...
..


History

The ''OpenEmbedded Project'' (''OE'' for short) was created by Chris Larson, Michael Lauer, and Holger Schurig, merging the achievements of
OpenZaurus OpenZaurus is a defunct embedded operating system for the Sharp Zaurus personal mobile tool PDA. History In its original form, the project was a repackaging of the SharpROM, the Zaurus's factory supplied kernel and root filesystem image. In or ...
with contributions from projects like
Familiar Linux Familiar Linux is a discontinued Linux distribution for iPAQ devices and other personal digital assistants (PDAs), intended as a replacement for Windows CE. It can use OPIE or GPE Palmtop Environment as the graphical user interface. Technical d ...
and OpenSIMpad into a common codebase. OpenEmbedded superseded these projects and was used to build any of them from the same code base. The ''OpenEmbedded-Core'' Project (''OE-Core'' for short) resulted from the merge of the
Yocto Project The Yocto Project is a Linux Foundation collaborative open source project whose goal is to produce tools and processes that enable the creation of Linux distributions for embedded and IoT software that are independent of the underlying architectu ...
with OpenEmbedded. All package recipes are since then maintained through OpenEmbedded-Core.


Layer organisation

OpenEmbedded-Core has adapted this layered structure in the merge with Yocto and new layer entries were added over time.Yocto & OpenEmbedded Core Layers
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: ; 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: :* meta-efl ( Enlightenment window manager) :* meta-gnome ( GNOME window manager) :* meta-gpe ( GPE window manager) :* meta-xfce ( Xfce window manager) ; Hardware-specific layer :* meta-efikamx (
Efika Efika is a line of power efficient ARM architecture and Power ISA based computers manufactured by Genesi. In Esperanto ''efika'' means "efficacious, effective, or efficient". EfikaPPC The EfikaPPC, sometimes also referred to as EFIKA 5200B, was ...
devices) :* meta-fsl-arm ( Freescale Semiconductor officially supported development boards) :* meta-fsl-arm-extra ( Freescale Semiconductor community supported boards) :* meta-handheld (
Personal digital assistant A personal digital assistant (PDA), also known as a handheld PC, is a variety mobile device which functions as a personal information manager. PDAs have been mostly displaced by the widespread adoption of highly capable smartphones, in part ...
s, PDAs) :* meta-intel (
Intel Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California. It is the world's largest semiconductor chip manufacturer by revenue, and is one of the developers of the x86 seri ...
embedded devices) :* meta-nslu2 (
NSLU2 The NSLU2 (Network Storage Link for USB 2.0 Disk Drives) is a network-attached storage (NAS) device made by Linksys introduced in 2004 and discontinued in 2008. It makes USB flash memory and hard disks accessible over a network using the SMB pro ...
devices) :* meta-openpandora (
Openpandora The Pandora is an operating system, handheld game console and mobile personal computer originally released in 2010. It is designed to take advantage of existing free and open-source software and to be a target for homebrew development. It inclu ...
devices) :* meta-smartphone (various smartphone devices) :* meta-ti (
Texas Instruments Texas Instruments Incorporated (TI) is an American technology company headquartered in Dallas, Texas, that designs and manufactures semiconductors and various integrated circuits, which it sells to electronics designers and manufacturers globa ...
devices) :* meta-xilinx ( Xilinx devices) :* meta-altera (
Altera Altera Corporation was a manufacturer of programmable logic devices (PLDs) headquartered in San Jose, California. It was founded in 1983 and acquired by Intel in 2015. The main product lines from Altera were the flagship Stratix series, mid-ran ...
devices) :* meta-ettus (Ettus Research USRP SDR devices) :* (Others) ; Yocto layer :* meta-yocto (Yocto Project layer) ; OpenEmbedded-Core layer :* openembedded-core :* meta-openembedded


Distributions supported

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: *
Ångström distribution The Ångström distribution is a defunct Linux distribution for a variety of embedded devices. The distribution is the result of work by developers from the OpenZaurus, OpenEmbedded, and OpenSIMpad projects. The graphical user interfaces (GU ...
* KaliOS *
Openmoko Openmoko is a discontinued project to create a family of Open-source model, open source mobile phones, including the hardware specification, the operating system (Openmoko Linux), and actual smartphone development implementation like the Neo 19 ...
* SHR * SlugOS *
WebOS webOS, also known as LG webOS and previously known as Open webOS, HP webOS and Palm webOS, is a Linux kernel-based multitasking operating system for smart devices such as smart TVs that has also been used as a mobile operating system. Initially ...
* Others


Supported hardware

Various devices are supported: ; Boards and processors : The
BeagleBoard The BeagleBoard is a low-power open-source single-board computer produced by Texas Instruments in association with Digi-Key and Newark element14. The BeagleBoard was also designed with open source software development in mind, and as a way of de ...
from Texas Instruments, and a variety of devices based on an ARM CPU are supported. ; Smartphones : Smartphones like the
Nokia N800 The Nokia N800 Internet tablet is a wireless Internet appliance from Nokia, originally announced at the Las Vegas CES 2007 Summit in January 2007. N800 allows the user to browse the Internet and communicate using Wi-Fi networks or with mobi ...
and
Neo FreeRunner Openmoko is a discontinued project to create a family of open source mobile phones, including the hardware specification, the operating system ( Openmoko Linux), and actual smartphone development implementation like the Neo 1973 and Neo FreeRun ...
are supported. ; Porting to new hardware : The constellation of OpenEmbedded, especially the open design, allows it to get OpenEmbedded to adapt new hardware fairly easy.


See also

* BitBake *
Buildroot Buildroot is a set of Makefiles and patches that simplifies and automates the process of building a complete and bootable Linux environment for an embedded system, while using cross-compilation to allow building for multiple target platforms on ...
* Emdebian Grip *
Familiar Linux Familiar Linux is a discontinued Linux distribution for iPAQ devices and other personal digital assistants (PDAs), intended as a replacement for Windows CE. It can use OPIE or GPE Palmtop Environment as the graphical user interface. Technical d ...
*
Openpandora The Pandora is an operating system, handheld game console and mobile personal computer originally released in 2010. It is designed to take advantage of existing free and open-source software and to be a target for homebrew development. It inclu ...
*
OpenZaurus OpenZaurus is a defunct embedded operating system for the Sharp Zaurus personal mobile tool PDA. History In its original form, the project was a repackaging of the SharpROM, the Zaurus's factory supplied kernel and root filesystem image. In or ...
*
Yocto Project The Yocto Project is a Linux Foundation collaborative open source project whose goal is to produce tools and processes that enable the creation of Linux distributions for embedded and IoT software that are independent of the underlying architectu ...
*
T2 SDE The T2 SDE (System Development Environment) is an open source Linux distribution kit. It is primarily developed by René Rebe. History ROCK Linux was started in the summer of 1996 by Claire Wolf. T2 SDE was forked in 2004, when developers where ...


References


External links

*
FOSDEM'05 presentation of OpenEmbedded

FOSDEM'07 presentation of OpenEmbedded

ELC'08 presentation of OpenEmbedded
{{DEFAULTSORT:Openembedded Build automation Embedded Linux Personal digital assistant software Software using the MIT license