+33 1 69 88 85 29
Formation :
Initiation Yocto
Référence : YOCTO
Durée :
4 jours
Niveau :
Approfondissement
Lieu :
Paris ou sur site
Tarif : 2520 € HT
Initiation Yocto
Description
Cette formation vous propose de découvrir les rouages de Yocto, d'en maîtriser l'utilisation courante (génération et installation d'images Linux embarqué), de savoir y intégrer vos propres développements et de développer le support pour vos propres cartes. Les travaux pratiques pour ce cours se déroulent sur des cartes « Raspberry Pi 3 » (une carte par participant) mises à disposition par STYREL.
Public concerné
Développeurs, ingénieurs voulant développer des systèmes embarqués.
Objectifs de la formation
- Apprendre le bon fonctionnement interne de Yocto
- Comprendre le vocabulaire de Yocto
- Organiser ses tâches avec les recettes
- Aller plus loin avec les BSP Layers et le SDK
Prérequis
- Connaître l’environnement GNU/Linux ou avoir suivi la formation « Linux - Commandes de base » (Réf. GNU)
- Notions simples de programmation
Programme de la formation
Introduction
- Systèmes embarqués avec Linux : modèle, licences, distributions
- Industrialisation et build-systems : outils de construction, gestion de configuration
- Yocto, Buildroot, PTXdist… : avantages et inconvénients
- Configuration nécessaire pour utiliser confortablement Yocto
Composants et vocabulaire de Yocto
- Éléments mis en oeuvre : Open-Embedded, Poky, Sato, Bitbake
- Lexique de Yocto : recipes, layers, BSP, SDK, toolchain
- Autres outils associés : Hob, Toaster...
- Documentation disponible concernant Yocto
Exploration des répertoires
- Présentation détaillée de l'arborescence de Yocto
- Scripts de configuration de Yocto
- Répertoires propres aux architectures
- Images et arborescences des cibles
Organisation des packages
- Principes et formats, : tar, RPM, DEB et IPK, numéros de version
- Packages virtuels : PREFERRED_PROVIDER
Bitbake, le cuisinier de Yocto
- Commandes et options principales
- Métadonnées : recettes, classes, et configurations
- Cache de compilation : SSTATE_DIR
- Parcours de recherche des configurations
Présentation des recettes
- Fichiers de recettes, organisation des tâches : fetch, unpack, patch, etc.
- Variables de configuration et d'environnem
- Syntaxe : opérateurs et méthodes
- Détails des tâches initiales : récupération et extraction des sources
Aspects avancés des recettes
- Détails des tâches de construction : configuration et compilation
- Gestion des dépendances et préférences ; DEPENDS, PROVIDES, etc.
- Extension de tâches : _append, _prepend...
Production de packages et images
- Détails des tâches de finalisation : installation et packaging
- Scripts d'installation et de suppression : preinst, postinst, prerm, postrm
- Création du root filesystem
Héritage de code : les classes
- Classe de base commune
- Analyse de classes standards : autotools, update-rc, kernel, etc.
Les layers dans Yocto
- Principe, layers standards de Poky : meta, meta-oe, etc.
- Organisation des layers spécifiques et génériques
- Règles de création d'un layer personnalisé
Les BSP Layers
- Notions de BSP Layers : principe, exemples, recommandations
- Création d’un BSP Layer : commande yocto-bsp, arborescence produite
- Support des machines, noyau Linux, bootloader, images
Software Development Kit
- Intérêt du SDK de Yocto
- Extraction, installation et utilisation d’un SDK