Usage complet du projet Yocto
Objectifs
|
||||||
- Bonnes connaissances en programmation C (voir notre cours L2 - Le langage C pour les microcontrôleurs embarqués)
- Connaissance des systèmes embarqués Linux (voir notre cours D1 - Linux embarqué avec Buildroot et Yocto)
- De préférence, connaissance de la programmation utilisateur Linux (voir notre cours D0 - Programmation en mode utilisateur Linux)
- Cours théorique
- Support de cours imprimé et au format PDF (en anglais)
- Le formateur répond aux questions des stagiaires en direct pendant la formation et fournit une assistance technique et pédagogique
- Activités pratiques
- Les activités pratiques représentent de 40% à 50% de la durée du cours
- Elles permettent de valider ou compléter les connaissances acquises pendant le cours théorique.
- Un PC pour deux stagiaires pour les activités pratiques
- Une plateforme cible pour deux stagiaires (sauf en cas d'utilisation de qemu)
- Accès à un serveur cloud privé
- Exemples de code, exercices et solutions
- Le formateur assiste les stagiaires pendant les exercices
- Au début de chaque demi-journée une période est réservée à une interaction avec les stagiaires pour s'assurer que le cours répond à leurs attentes et l'adapter si nécessaire
- Tout ingénieur ou technicien en systèmes embarqués possédant les prérequis ci-dessus.
- Les prérequis sont vérifiés avant l'entrée en formation, sur la base des prérequis publiés sur cette fiche.
- Pendant la formation, les acquis sont évalués en continu : quiz de fin de séquence et observation directe du formateur.
- À l'issue de la formation, chaque participant reçoit une attestation de fin de formation.
Plan du cours
- Présentation de Yocto
- Historique
- Yocto, Open Embedded et Poky
- Objectif du Yocto Project
- Les principaux projets
- Architecture de Yocto
- Présentation
- Recipes et classes
- Tâches
- Objectifs du système de build
- Construire des images déployables
- Layers et priorités des layers
- Organisation des répertoires
- Fichiers de configuration (local, machine et distribution)
- L'outil bitbake
- Utiliser Yocto
- Construire un paquet
- Construire une image (système de fichiers racine + u-boot + kernel)
- Outils divers autour de Yocto
- Le SDK Yocto
- Le SDK extensible
- Architecture d'une recipe
- Tâches
- Dépendances entre tâches
- Dépendances entre recipes
- Le langage bitbake
- Variables et fonctions standard
- Classes et recipes
- Les classes Yocto de base
- Principales commandes bitbake
- Ajouter un nouveau layer
- Structure d'un layer
- Les différents types de layers
- Les différents types de recipes et de classes
- Programme simple
- Paquet fondé sur un Makefile
- Paquet fondé sur les autotools
- u-boot
- kernel
- Module hors arborescence
- Stratégies de création de recipes
- Depuis zéro
- Avec devtool
- Avec recipetool
- À partir d'une recipe existante similaire
- Déboguer les recipes
- Déboguer la sélection des recipes
- Déboguer les dépendances
- Déboguer les tâches
- Définir le packaging
- Découpage des paquets
- Démarrer automatiquement un programme
- Personnaliser la recipe d'un paquet existant (.bbappend)
- Dépendances entre recipes
- Créer et ajouter des patches
- Créer un patch pour un composant fourni par la communauté
- Créer un patch pour un composant maintenu par l'utilisateur
- Définir de nouvelles tâches
- Déclaration d'une tâche
- Codage des tâches
- Créer des classes
- Créer de nouvelles classes indépendantes
- Hériter d'une classe existante
- Construire un système de fichiers racine avec Yocto
- Créer un système de fichiers racine personnalisé
- Écrire une recipe d'image
- Choisir les paquets à construire
- Choisir les types de systèmes de fichiers
- Les différents types d'images
- Hériter et personnaliser des images
- Personnaliser les fichiers de configuration du système (réseau, points de montage, …)
- Gestion des utilisateurs et des groupes
- Gestion des paquets
- rpm
- opkg
- Utiliser devtool pour créer un paquet et sa recipe
- Utiliser devtool pour modifier un paquet et sa recipe existants
- Utiliser devtool pour mettre à jour une recipe et construire une nouvelle version d'un paquet
- Ajout des paquets de débogage distant d'eclipse
- Configuration d'eclipse
- Introduction à python
- Utiliser python dans Yocto
- Les principales classes bitbake
- Définir des valeurs de variables en Python
- Écrire des tâches en Python
- Porter Yocto sur une nouvelle carte
- Architecture du BSP
- Choix et configuration de la recipe u-boot
- Choix et configuration de la recipe du kernel
- Ajout d'un nouveau layer BSP (yocto-bsp create)
- Ajout d'un u-boot personnalisé à Yocto
- Personnalisation de la recipe du kernel Yocto
- Définition de la configuration par défaut
- Ajout de patches
- Indication des sources du kernel
- Configuration du kernel Linux
- Utilisation de menuconfig
- Utilisation de patches
- Création de fragments de configuration
- Validation de la configuration
- Device tree du kernel
- Ajout de modules à l'image
- Création d'un module hors arborescence
- Modules kernel avec l'eSDK
- Mise en place d'un cache de sources Yocto
- Cache local, par système
- Mise en place d'un cache global, à l'échelle du réseau
- Personnalisation du système de build
- Utilisation d'une toolchain préconstruite
- Utilisation d'un kernel précompilé
- Optimisation des temps de build Yocto
- Utilisation de paquets binaires préconstruits
- Utilisation de caches de compilation partagés
Plus d'information
Pour vous enregistrer ou pour toute information supplémentaire, contactez nous par email à l'adresse info@ac6-formation.com.
Les inscriptions aux sessions de formation sont acceptées jusqu'à une semaine avant le début de la formation. Pour une inscription plus tardive nous consulter
Vous pouvez aussi remplir et nous envoyer le bulletin d'inscription
Ce cours peut être dispensé dans notre centre de formation près de Paris ou dans vos locaux, en France ou dans le monde entier.
Les sessions inter-entreprises programmées sont ouvertes dès deux inscrits. Sous condition d'un dossier complet, les inscriptions sont acceptées jusqu'à une semaine avant le début de la formation.
Dernière mise à jour du plan de cours : 2 juillet 2026
L'inscription à nos formations est soumise à nos Conditions Générales de Vente
Sur le même sujet :
Yocto ou Buildroot : comment choisir pour votre projet Linux embarqué