Buildroot: a Firmware Generator for Embedded Systems培训

课程编码

buildroot

课程时长

7 小时 通常来说是1天,包括中间休息。

要求

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

课程概览

Buildroot是一个开源项目,包含生成交叉编译工具链的脚本,可定制的根文件系统映像和嵌入式设备的Linux内核。在这个实践课程中,参与者将学习如何使用它:

  • 如何选择进入根文件系统的软件。
  • 如何添加新包并修改现有包。
  • 如何添加对新嵌入式主板的支持。

在课程中,将生成可引导的文件系统映像。使用QEMU仿真器提供远程课程,而在课堂上则可以使用QEMU或培训师选择的真实嵌入式电路板。

其他具有类似目标的项目包括Yocto项目和OpenWRT。请使用这些 演示文稿来确定哪一个是您需要的正确选择。

Machine Translated

课程大纲

  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

客户评论

★★★★★
★★★★★

课程分类

相关课程

促销课程

订阅促销课程

为尊重您的隐私,我公司不会把您的邮箱地址提供给任何人。您可以享有优先权和随时取消订阅的权利。

我们的客户

is growing fast!

We are looking to expand our presence in China!

As a Business Development Manager you will:

  • expand business in China
  • recruit local talent (sales, agents, trainers, consultants)
  • recruit local trainers and consultants

We offer:

  • Artificial Intelligence and Big Data systems to support your local operation
  • high-tech automation
  • continuously upgraded course catalogue and content
  • good fun in international team

If you are interested in running a high-tech, high-quality training and consulting business.

Apply now!

该网站在其他国家/地区