Buildroot: a Firmware Generator for Embedded Systems Schulung

Alle Preise zzgl. MwSt

Last updated

Kurs Code

buildroot

Dauer

7 hours (üblicherweise 1 Tag inklusive Pausen)

Voraussetzungen

  • The participant must have built a kernel at least once for a traditional desktop (non-embedded) Linux system.
  • Knows what components the Linux userspace on a desktop system is composed of.
  • Knows how to generate and use patches.
  • Must be able to explain what is GNU Make, Autotools, what other build systems exist.
  • Ideally, maintains at least one Linux package, either as an upstream author, or in any traditional Linux desktop distribution.
  • Prior experience with embedded development is not required, and is not a substitute for the knowledge about traditional Linux desktops specified above.

Überblick

Buildroot ist ein Open-Source-Projekt, das Skripte enthält, die eine Cross-Compilation-Toolchain, eine benutzerdefinierbare Root-Datei-System-Ime und eine Linux Kernel für eingebettete Geräte produzieren. Während dieses praktischen Kurses lernen die Teilnehmer, wie sie verwendet werden:

    Wie wählen Sie Software, die in das Root-Datei-System geht. Wie man neue Pakete hinzufügt und bestehende Modifiziert. Wie man Unterstützung für neue eingebettete Platten hinzufügt.

Im Laufe des Kurses werden Bootable-File-System-Bilder produziert. Remote Kurse werden mit dem QEMU-Emulator geliefert, während im Klassenzimmer entweder QEMU oder echte eingebettete Boards der Wahl des Trainers verwendet werden können.

Andere Projekte mit ähnlichen Zielen sind das Yocto-Projekt und OpenWRT. Bitte verwenden Sie diese Präsentationen, um festzustellen, welche die richtige Wahl für Ihre Bedürfnisse ist.

Machine Translated

Schulungsübersicht

  1. Getting started
    1. Obtaining Buildroot
    2. Build system requirements
    3. Cross-compiler terminology: build, host, target, sysroot
    4. Choosing the correct target
    5. Building a minimal embedded system and booting it
    6. Contents of the resulting filesystem image
    7. Parallel builds
    8. Full and partial rebuilds
  2. Design goals of Buildroot
  3. Choices to be made
    1. C library: glibc or uClibc or musl?
    2. Init system: busybox vs sysVinit vs systemd
    3. Managing device nodes in /dev
    4. Selecting other packages
  4. Understanding the build instructions
    1. Syntax of Kconfig (Confog.in) files
    2. Features of GNU Make used by Buidroot Makefiles
    3. Style guide for Config.in and *.mk files
    4. How to add a simple Autotools-based package
    5. The difference between staging and target directories
    6. The need for host packages
    7. How to express dependencies and optional features
    8. Support for languages other than C and build systems other than Autotools
    9. Debugging Makefiles
    10. Rebuilding a single package
  5. Analyzing the build results
    1. What took so much build time?
    2. What took so much disk space?
    3. Why has this package been built?
  6. Organizing external package trees
  7. Workflow for application developers
    1. How to use a local source directory
    2. Overriding build instructions
    3. Debugging your application
    4. Speeding up rebuilds
    5. Viewing build logs
  8. Dealing with common cross-compilation issues
    1. How to write your own software so that it is friendly to cross-compilers
  9. Workflow for kernel developers
    1. How the kernel boots on an embedded system
    2. Changing configuration options and adding patches
    3. Module loading mechanisms
  10. Making a finished product
    1. Running daemons at startup
    2. Providing custom configuration files
    3. Available firmware update mechanisms
    4. Upgrading to a new Buildroot version
    5. Complying with open-source licenses

Erfahrungsberichte

★★★★★
★★★★★

Verwandte Kategorien

Kombinierte Kurse

Sonderangebote

Sonderangebote Newsletter

Wir behandeln Ihre Daten vertraulich und werden sie nicht an Dritte weitergeben.
Sie können Ihre Einstellungen jederzeit ändern oder sich ganz abmelden.

EINIGE UNSERER KUNDEN

is growing fast!

We are looking for a good mixture of IT and soft skills in Germany!

As a NobleProg Trainer you will be responsible for:

  • delivering training and consultancy Worldwide
  • preparing training materials
  • creating new courses outlines
  • delivering consultancy
  • quality management

At the moment we are focusing on the following areas:

  • Statistic, Forecasting, Big Data Analysis, Data Mining, Evolution Alogrithm, Natural Language Processing, Machine Learning (recommender system, neural networks .etc...)
  • SOA, BPM, BPMN
  • Hibernate/Spring, Scala, Spark, jBPM, Drools
  • R, Python
  • Mobile Development (iOS, Android)
  • LAMP, Drupal, Mediawiki, Symfony, MEAN, jQuery
  • You need to have patience and ability to explain to non-technical people

To apply, please create your trainer-profile by going to the link below:

Apply now!

This site in other countries/regions