We have already learned that the environment for embedded development consists of two systems: the build system, where you write and build code, and the host system, which runs the code.
We now have two virtualized environments set up:
- Ubuntu Linux in a Docker container, which will be our build system
- QEMU running Raspbian Linux, which will be our host system
In this recipe, we will set up the cross-compilation tools required to build Linux applications for the ARM platform and build a simple Hello, world! application to test the setup.