Das Yocto Projekt - Ein Überblick

Termine: 03. - 06.07.201827. - 30.11.2018 | 4 Tage, 9:00 - 17:00 Uhr
Teilnahmegebühr: 2.290 Euro zzgl. MwSt 
PDF zum Training


ICON – Eclipseina Embedded Academy Seminar -  Embedded Linux Yocto Projekt

Beschreibung des Seminars

Das Yocto-Projekt (YP) stellt ein Open-Source-Projekt dar, das Ihnen Templates, Tools und Methoden liefert, um selbst unabhängig von der Hardware-Architektur Linux-basierte Systeme für Embedded Produkte zu generieren.

Auch für erfahrene GNU/Linux-Nutzer stellt sich jedoch die Frage, wie sich der tägliche Workflow im YP abbilden lässt. Eine Antwort darauf liefert dieses Seminar, in dem die wesentlichen Elemente des YP vorgestellt werden.

Ziel des Seminars ist es, die erforderlichen Grundlagen zur Verwendung des Yocto Projekts auf Basis von bereits vorhandenem GNU/Linux- Wissen zu vermitteln.

Als Grundlage wird mindestens das Seminar „Embedded Linux in Theorie und Praxis“ empfohlen,
darüber hinausgehendes Wissen im GNU / Linux-Umfeld ist von Vorteil.

Dieses Seminar bieten wir auch auf Englisch an: The Yocto Project - A Summary.

Zielgruppe

Software-, Entwicklungs-, System-Ingenieure, Tester, Administratoren, Techniker und Interessierte am YP,
die bereits gut fundierte Embedded GNU/Linux Kenntnisse haben

Voraussetzungen

  • Grundkenntnisse zur Verwendung eines GNU/Linux Systems (z.B. Ubuntu) im User Space,
  • Grundkenntnisse im Umgang mit der Command Line Shell,
  • Grundkenntnisse in der User/Kernel-Space-Programmierung unter GNU/Linux und
  • Kenntnisse in der Programmierung auf C sind erforderlich.

Inhalte des Seminars

1. Tag: Grundlagen

  • Einführung in die Geschichte von Unix/Linux, Lizenzen, Standards
  • Besonderheiten: Linux auf dem Desktop im Vergleich zu Linux auf einem eingebetteten System,
    Cross-/Native Toolchains, Build-Systeme, C-Bibliotheken
  • Eval Board
  • Einführung in das Yocto Projekt
  • der Yocto Autobuilder

2. Tag: Der YP-Workflow und Bitbake

  • Konfiguration und Quellen
  • Buildprozesse: Quellen fetchen, Patchen, Konfigurieren, Kompilieren, Installieren, Pseudo, Beispiele für Rezepte,
    Output-Analyse und Packaging, Erzeugen von Images, Erzeugen von SDKs
  • Anpassen von Images: Intro, local.conf, IMAGE FEATURES, kundenspezifische .bb files und package groups
  • Geschichte und Syntax von Bitbake
  • Bitbake Syntax
  • Bitbake Debugging:
    - Debug Level
    - Rezepte/Images/Packagegroups finden
    - BitBake Umgebung/Tasks/Logging
    - Build/spezifischen Task erzwingen, cleansstate, stamp ungültig erklären, devshel
    - Abhängigkeits-Explorer
    - grafische Wrapper für BitBake

3. Tag: Layers, Kernel und Application Development Toolkit (ADT)

  • Layers Intro, bitbake-layers tool, yocto-layer tool
  • Board Support Package (BSP) Intro, Systementwicklung Workflow, BSP-Entwicklerhandbuch (bsp-tool)
  • Kernel Intro, Systementwicklung Workflow, Kernel-Entwicklerhandbuch (defconfig, defconfig + Konfigurationsfragment,
    in tree kmod, out of tree kmod, fdt)
  • Application Development Toolkit Intro, Cross-Development Toolchain, Sysroot, ADT- Eclipse Yocto Plug-in,
    der QEMU Emulator, User-Space-Werkzeuge
  • Installieren von ADT und Toolchains (Cross-Toolchain tarball und ADT-Installer verwenden)

4. Tag: Debugging, Profiling/Tracing

  • Debugging, gdb, gdb Remote-Debugging, (gdb Remote) Debugging mit Eclipse, (remote) Ausführen mit Eclipse
  • Tracing und Profiling:  perf, gprof, gcov, strace, ftrace, systemtap, oprofile, LTTng + Eclipse (Datenvisualisierung)
  • Paketverwaltung: Arbeit mit Paketen, IPK, Erstellen eines Paket-Feeds, Installation eines Pakets mit opkg auf der Zielhardware
  • Lizenzierung, Hinzufügen einer benutzerdefinierten Lizenz, Open-Source-Lizenz-Compliance
  • devtool, Demonstration zur Erstellung eines meta-layer für ein richtiges Projekt (meta-cfengine)

Methodik und Seminarunterlagen

Vortrag und praktische Beispiele mit Host (Laptops mit Ubuntu 14.04.x LTS) und Zielsystem
(z. B. Beagle Bone Black Rev.C - http://beagleboard.org/BLACK)
Die Geräte werden Ihnen während des Trainings zur Verfügung gestellt, jeweils ein Arbeitsplatz für zwei Teilnehmer.
Sie erhalten ein Referenz- und ein Arbeitsbuch (in Englisch), ein Beagle Bone Black Rev. C sowie ein Standard FTDI 3.3 V to USB Kabel
und nach dem Training einen Downloadlink mit einem vorgefertigten Docker Image und Beispielen, um das Erlernte zu vertiefen.

Referent

Robert Berger - Reliable Embedded Systems