Info

Please see below for English version.

Das Yocto Projekt - Ein Überblick

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 Yocto Projekt abbilden lässt. Eine Antwort darauf liefert dieses Seminar, in dem die wesentlichen Elemente des YP vorgestellt werden.

Ziel des Trainings 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 können Sie auch als Inhouse-Seminar buchen! Schreiben Sie uns einfach eine unverbindliche Mail mit Ihrem Wunschtermin und Ort mit Anzahl der Teilnehmer: training@eclipseina.com

Blättern Sie durch den Seminarkatalog der Embedded Academy, um viele weitere hochwertige Trainings zu entdecken!


Zielgruppe

Software-, Entwicklungs-, System-Ingenieure, Tester, Administratoren, Techniker und Interessierte am Yocto Projekt, 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.


Seminarinhalte

1. Tag: Grundlagen - Linux, Eval Board, Yocto

  • 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 Yocto Projekt 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 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.



​​​​​​​Veranstalter:

Eclipseina GmbH | Embedded Academy

Technologiezentrum TechBase
Franz-Mayer-Straße 1
93053 Regensburg

Tel.: +49 941 / 462 974 20
Fax: +49 941 / 462 974 30


→ Termine und Anmeldung


--------------------------------------------------------------- English ---------------------------------------------------------------

The Yocto Project - A Summary

The Yocto-Project (YP) represents an Open Source project which provides templates, tools and modes to generate embedded products independent of Linux based systems and their hardware architecture. Even experienced GNU/Linux-users might be unfamiliar with how to accommodate their workflow to YP and whether they need it at all. This seminar will give answers and show the most important elements which define the Yocto Project.

The seminar’s aim is to impart the essentials necessary for using YP, based on existing knowledge in GNU and Linux.

In order to have a solid base for this seminar, we recommend taking at least the seminar Embedded Linux in Theory and Practice. Further knowledge in GNU and/or Linux would be of advantage.

You can also book this seminar as an in-house seminar! Just write us a short non-binding e-mail with the desired date and location as well as the number of participants: training@eclipseina.com

Get an overview of all our seminars on embedded-academy.com!


Target Group

The workshop is aimed at software engineers, development engineers, system engineers, testers, administrators, engineers and other parties interested in the YP, with a solid knowledge of Embedded GNU/Linux.


Prerequisites

  • Basic knowledge of using a GNU/Linux system (e.g. Ubuntu) as an end user in user space
  • Basic knowledge of a command line shell
  • Basic knowledge of user/kernel space programming with GNU/Linux
  • Intermediate C programming knowledge


Training Content

Day 1: Basics

  • Introduction into the History of Unix/Linux, Standards
  • Embedded Specifics: Embedded Linux vs. Desktop Linux, Cross-/Native tool chains, Build-systems, C-libraries
  • Eval Board
  • Introduction into the Yocto Project
  • The Yocto auto builder

Day 2: The YP-Work flow and Bitbake

  • Configurations and sources
  • Building processes: source fetching, patching, configure, compile, install, Pseudo, examples of recipes, Output Analysis/Packaging, image and SDK generation
  • Customizing images: Intro, local.conf, IMAGEFEATURES, custom .bb files and package groups
  • Bitbake’s history and syntax
  • Bitbake Debugging:
    - Debug Level
    - Finding recipes/images/package groups
    - BitBake environment/tasks/logging
    - Build/force specific task cleansstate, stamp invalid explanation, Devshell
    - Dependence-Explorer
    - BitBake with graphic wrapper

Day 3: Layers, Kernel and Application Development Toolkit (ADT)

  • Layers Intro, Bitbake-layers tool, Yocto-layer tool
  • Board Support Package (BSP) Intro, system development workflow, developer’s handbook (bsp-tool)
  • Kernel Intro, workflow system development, Kernel’s developer handbook (defconfig, defconfig + configuration fragment, in tree kmod, out of tree kmod, fdt)
  • Application Development Toolkit (ADT) Intro, Cross-Development tool chain, Sysroot, ADT-Eclipse Yocto plug-in, the QEMU emulator, user space tools
  • Install ADT and tool chains (to use ADT-Installer Cross-tool chain tarball)

Day 4: Debugging, Tracing and Profiling

  • Debugging: gdb, gdb Remote-Debugging, (gdb Remote) Debugging with Eclipse, (remote) perform with Eclipse
  • Tracing and Profiling: perf, gprof, gcov, strace, race, systemtap, oprofile, LTTng + Eclipse (data visualization)
  • Package management : working with packages, IPK, creating a package-feed, Installation of software suit with opkg on hardware
  • Licensing, adding a customized license, Open-Source-License-Compliance
  • Devtool, demonstrating the creation of meta-layers for a real project (meta-cfengine)


Methods and Training Materials

Lecture and practical examples with host (laptops with Ubuntu 14.04.x LTS) and target system (e.g. Beagle Bone Black Rev.C - http://beagleboard.org/BLACK). The devices will be provided during the training. You receive a reference- and workbook, one Beagle Bone Black Rev.C plus one standard FTDI 3.3 V to USB cable.

After the training you will get access to a download link with a prepared Docker image and examples.


Organiser:

Eclipseina GmbH | Embedded Academy

Technologiezentrum TechBase
Franz-Mayer-Straße 1
93053 Regensburg

Tel.: +49 941 / 462 974 20
Fax: +49 941 / 462 974 30


→ Dates and Registration