lørdag den 8. november 2025

Working with Yocto: Basic concepts

Getting into embedded linux can be a daunting task, and the learning curve for working with Yocto is steep. In the following posts I will take you through how to build a linux image, create and debug an application and include that application in the image. 

But first we need to get a few things straight: Many speak of Yocto as an embedded linux distribution. It is not. Yocto is a framework for buildling linux distributions, i.e. it provides a set of tools to build, manage and install the many parts that constitutes a linux distribution into a flash image that can be used on a given platform. Software packages and add-ons are structured as "layers" that form a dependency tree. This allows extensions to be added without having to modify already existing code.

A distribution can be tailored specifically to the needs of the product that is being built in terms of content, machine architecture etc. etc. For a specific distribution you build, Yocto also can generate an SDK that you must use to develop apps for the distribution. This is because the available tools and libraries is dependent on the features and machine architecture enabled for the distribution. 

This series will use the OpenSTLinux system developed by ST for their stm32mp* processor series. It uses yocto as the development framework, but adds a couple of proprietary layers to the standard tree to support their hardware. Yocto supports many development models, but here I will deal with the single developer, single machine model, and I will use the stm32mp157f-dk2 development kit as my target platform. 

A typical development flow for a product running embedded linux consists of the following: 

All of the steps above are treated in the series. As it progresses, links will be added to point to the pages that  describes these concepts. 


Ingen kommentarer:

Send en kommentar