Archives de la catégorie ‘Yocto Project’

[Yocto Tip] Build Timestamp

Embarqué, Linux, TIP, Yocto Project | Publié par cpb
Nov 16 2024

J’ai souvent des idées de petites astuces minimales mais intéressantes pour l’utilisation de Yocto Project (ou d’autres sujets). Après avoir longtemps hésité à les publier car elles sont généralement très brèves, j’ai décidé de les poster dans cette nouvelle rubrique ‘[Yocto Tip]’. Cet article n’a pas de rapport avec la série sur Zephyr qui va continuer très prochainement.

Pendant la phase de mise au point d’un système, il s’avère souvent intéressant de pouvoir différencier deux builds successifs. De même, pendant la mise en œuvre du système de mise à jour, il est important de pouvoir générer à chaque exécution de bitbake une image différente de la précédente même si aucun contenu n’est modifié.

Une astuce simple pour cela, consiste à ajouter dans l’image un fichier contenant la date et l’heure de compilation.

Lire la suite de cette entrée »

Les variables principales de Bitbake – 2 – Les variables contextuelles

Embarqué, Linux, Yocto Project | Publié par cpb
Oct 01 2024

Nous avons vu dans l’article précédent qu’il existe de nombreuses variables pour configurer le comportement de Bitbake lors d’un build de Yocto Project. Nous avons examiné précédemment les variables globales, qui sont valables durant tout le build.

Nous allons étudier à présent les principales variables contextuelles (on parle aussi de variables « scopées ») qui ne sont valides que dans certains contextes.

Les contextes qui nous intéresseront ici sont ceux des recettes (.bb) et des amendements de recettes (.bbappend).

Lire la suite de cette entrée »

Les variables principales de Bitbake – 1 – Les variables globales

Embarqué, Linux, Yocto Project | Publié par cpb
Sep 17 2024
Variables de Bitbake

Lorsqu’on effectue un build pour Yocto Project, l’outil bitbake parcourt des fichiers de configuration que nous avons pu examiner dans l’article précédent. Pendant ce parcours, un nombre important de variables sont remplies.

Il est facile de retrouver dans la documentation de Yocto Project la signification d’une variable, mais l’opération inverse n’est pas toujours facile : trouver quelle variable remplir pour répondre à un problème donné.

C’est la question à laquelle j’ai essayé de répondre dans cette série d’articles, en commençant par les variables globales, dont le contenu est disponible durant tout le build. Le prochain article traitera des variables définies dans les contextes de recette.

Lire la suite de cette entrée »

Mise à jour de mon cours « Linux embarqué avec Yocto »

Embarqué, Formations, Linux, Yocto Project | Publié par cpb
Août 20 2024

J’ai mis à jour mon cours en ligne « Linux embarqué avec Yocto » (gratuit, sous licence Creative Commons CC-BY-NC) avec la dernière version long terme de Yocto Project : « Poky Scarthgap »

La première édition de ce cours datait de janvier 2020 (Poky « Zeus » ), la deuxième de 2021 (Poky « Hardknott » ) et la troisième de 2023 (Poky « Kirkstone » ).

Ce cours est destiné aux personnes souhaitant découvrir l’utilisation de Yocto pour produire des systèmes Linux embarqués robustes et fiables.

Le texte est accompagné de beaucoup de manipulations que je vous encourage à refaire vous-même pour bien prendre en main cet environnement de build (la plupart des expérimentations ne nécessite qu’un PC sous Linux).

Le cours est accessible ici : https://www.blaess.fr/christophe/yocto-lab/.

Illustration : Lake District, England (fond de carte OpenStreetMap) les versions récentes de Yocto Project sont nommées à partir de lieux de ce parc national.

Imbriquer des systèmes Linux avec Yocto Cooker

Embarqué, Linux, Yocto Project | Publié par cpb
Fév 03 2022

Cet article décrit un petit projet expérimental sans grande utilité, mais qui a aiguisé ma curiosité pendant quelques temps. Nous allons imbriquer les uns dans les autres des émulateurs de systèmes compilés avec Yocto Project.

Outre le challenge un peu surréaliste que cela représente, nous verrons que cette expérience permet de comprendre certaines dépendances entre packages et d’affiner une recette pour embarquer notre outil Yocto Cooker.

Lire la suite de cette entrée »

Yocto Cooker (3/3)

Embarqué, Linux, Yocto Project | Publié par cpb
Jan 27 2022

Dans les deux premiers articles de cette série, nous avons vu comment écrire un menu assez complet pour Yocto Cooker afin de produire des images pour diverses plateformes.

Pour le moment nous n’avons principalement utilisé que l’action cooker cook. Il est temps de voir les autres possibilités offertes par Yocto Cooker.

Lire la suite de cette entrée »

Yocto Cooker (2/3)

Embarqué, Linux, Yocto Project | Publié par cpb
Jan 20 2022

Dans le premier article de cette série nous avons vu comment utiliser cooker pour produire une image avec Yocto Project en ne renseignant qu’un seul fichier : le menu.

Dans cet article nous allons voir comment compléter ce menu pour produire plusieurs builds en une seule commande, certains d’entre-eux pouvant partager divers éléments de configuration.

Lire la suite de cette entrée »

Yocto Cooker (1/3)

Embarqué, Linux, Yocto Project | Publié par cpb
Jan 13 2022

Cette petite série de trois articles présente un outil (Yocto Cooker) qui permet d’organiser tous les fichiers nécessaires à la compilation d’un système Linux embarqué avec Yocto Project. Cet outil permet également de lancer automatiquement un ou plusieurs builds (compilation d’images complètes prêtes à installer).

Attention: cet article ne présente pas les concepts propres à Yocto Project, on pré-suppose une certaine familiarité avec cet environnement. Pour trouver une introduction à Yocto, et un tutorial complet sur son utilisation, on se reportera à l’article Linux embarqué avec Yocto Project.

Lire la suite de cette entrée »

Linux embarqué avec Yocto Project

Beagle Bone Black, Embarqué, Linux, Raspberry Pi, Yocto Project | Publié par cpb
Jan 06 2020

The Yocto Project est un outil permettant de produire des systèmes embarqués avec Linux. Il est un peu plus complexe à aborder que son confrère Buildroot dont j’ai parlé ici à plusieurs reprises.

Je vous propose un cours en ligne pour découvrir Yocto et apprendre à préparer des systèmes Linux autonomes parfaitement maîtrisés.

Ce cours est disponible ici : Linux embarqué avec Yocto.

Je le mettrai à jour régulièrement et l’enrichirai probablement avec des aspects plus avancés.

Si vous souhaitez du support technique ou participer à nos sessions de formation, n’hésitez pas à me contacter.