Chapter 3. C Compiler, Device Drivers, and Useful Developing Techniques
In the previous chapter, we saw how to use the serial console to manage our developer kits and how it can be used to manage the bootloader too. Also, we introduced some device drivers to communicate with the host through a USB cable, and we installed a Debian OS, which is a collection of files in a filesystem, the main and the first filesystem that our embedded systems mount and boot.
In this chapter, we will focus our attention on the C compiler (with its counterpart, the cross-compiler). You will also learn when to use the native or cross-compilation and the differences between them.
Then, we'll see some kernel stuff used later in this book (configuration, recompilation, and the device tree). We'll also look a bit deeper at the device drivers, how they can be compiled, and how they can be put into a kernel module (that is kernel code that can be loaded at runtime). This is because starting from the...