Search by Tags

Yocto Project

 

Compare with Revision




Subscribe for this article updates





Overview

"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 and IOT products, regardless of the hardware architecture." (quoted from: About the Yocto Project).

OpenEmbedded is a build framework for embedded Linux. It was adopted as the Yocto build system and is co-maintained by the Yocto Project and the OpenEmbedded Project.

Note: Often Toradex documentation refers to OpenEmbedded instead of Yocto. When using the developer website search, please search for both terms for a better result overview.

Toradex is a Yocto Project participant company that makes use of the main Yocto infrastructure - especially the OpenEmbedded build system - to provide a ready-to-use embedded Linux Yocto based BSP, which makes it simple to get started. You can leverage Toradex' BSP as a base to developing your embedded Linux systems with the Yocto Project.

How to Build a Yocto / OpenEmbedded Image

The comprehensive Toradex guide to building a Yocto/OpenEmbedded embedded Linux image is:

A summary of the steps to follow from configuration to deployment is provided below. Please see the technical article above for the actual commands and exact steps you have to execute:

  1. Install the prerequisites. Make sure you install and configure git, and that proxy/firewall does not block access to any required URL.
  2. Download the required repositories using the Repo tool.
  3. Export the environment setup script
  4. Setup your machine, which tells OpenEmbedded for which Toradex computer on module you are building.
  5. Use bitbake to build the image. This takes a lot of time during the first build. For later builds, only the packages you customize will be re-built which makes it much faster.
  6. Deploy the resulting image to the computer on module.

Related content

Toradex has a Blog and Webinars pages where you can find content related to Yocto, aimed to help your embedded Linux development with Yocto Project. Check periodically for most up-to-date articles and if you would like to read a blog post that is not yet written, leave your feedback using the Feedback developer website button.

Blogs

Webinars

There are many third party resources, such as the Yocto project set of manuals:

Details

This section provides a follow-up to the overview section.

Yocto Project

The Yocto Project provides infrastructure such as:

  • OpenEmbedded core, a basic set of recipes to build the distribution (e.g. C-Library, Shell, Busybox).
  • BitBake, a Python powered build engine which interprets the recipes and builds a root file system directly from sources.
  • AutoBuilder, continuous integration system to assure QA.
  • Various BSPs, provided by the participants.
  • Poky, a reference distribution which includes Sato, a GTK based reference user interface.

There are other open source components and tools which are developed under the umbrella of Yocto, see the Software: Components and Tools page of Yocto.

Toradex and Yocto Project Relationship

Toradex makes use of the main infrastructure of Yocto, namely:

  • OpenEmbedded core and BitBake, our BSP uses the OpenEmbedded core recipes.
  • AutoBuilder, we use AutoBuilder internally to build our BSPs.

We provide our BSP as OpenEmbedded layers available at http://git.toradex.com.

  • toradex-bsp-platform: the Repo manifest containing all layers used by the Toradex BSP (in-house and third party ones), which is used to setup the build environment.
  • meta-toradex-bsp-common: layer common to all Toradex computer on modules.
  • meta-toradex-demos: layer that provides recipes used for our demo images.
  • meta-toradex-nxp: layer that provides support for the computer on modules that use NXP SoCs.
  • meta-toradex-tegra: layer that provides support for the computer on modules that use NVIDIA Tegra SoCs.
  • meta-toradex: legacy layer used in Toradex embedded Linux BSP 2.6 and earlier.

Note: From Toradex embedded Linux BSP 2.7, meta-toradex was split into several layers: meta-toradex-bsp-common, meta-toradex-demos, meta-toradex-nxp and meta-toradex-tegra.

We do not make use of the Poky reference distribution by default due to its limited desktop capabilities. Instead, we opted to use the Yocto compatible Ångström distribution with an LXDE desktop environment. This allows Toradex to provide a similar user experience to Windows CE.


  • Toradex LXDE based Desktop

    Toradex LXDE based Desktop

Toradex also recommends to use Qt to build appealing user interfaces, which are possible to run with or without Desktop environment (see How to set up Qt Creator to cross-compile for embedded Linux).

With some configuration effort, it is also possible to use the Yocto reference distribution Sato, if preferred.


  • Poky Sato interface

    Poky Sato