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