Deciphering the software development kit

A software development kit (SDK) is a set of tools and files used to develop and debug. These tools include compilers, linkers, debuggers, external library headers, and binaries, and may include custom utilities and applications. This set of programming tools is called a toolchain.

In embedded development, the toolchain is often composed of cross-platform tools or tools executed on one architecture that then produces a binary for use in another architecture. For example, a gcc binary that runs on an x86-64-compatible machine and produces one binary for an ARM machine is a cross-compiler. When the tool and resultant binary are executed on the same architecture, it is called a native build.

Usually, when we work on custom source code and use external libraries, for example, libusb or libgl, these libraries are used to build at runtime. The custom source may be built against the library header files, and the binary may be moved somewhere during the execution. The set of files used at build time is placed under the sysroots directory, part of the Poky SDK, which is very configurable, depending on the application, and is a very simple one for general use.

When Poky executes tasks through the use of BitBake, it also needs a toolchain to be able to compile and link binaries for the target. This is called an internal toolchain because the tools are used internally by the build system. These tools are not intended to be used externally as they are not prepared for that, although they may be used in some very specific and advanced use cases.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.191.166.122