ABSTRACT

This chapter presents the main components of a software development toolchain exclusively based on the GNU compiler collection (GCC) and other open-source projects. It provides some practical information on how to configure and build the toolchain components. The chapter focuses on some peculiarities of the GCC-based toolchain. The preprocessor and the compiler grammars are the same at the lexical level, as an optimization, in a GCC-based toolchain the preprocessor also performs tokenization on the input files. In embedded software development, the complier kind of toolchain most frequently used is the cross-compilation toolchain. The GCC-based toolchain is that the compiler driver is programmable. As toolchain components are built, their executable files are stored into the bin subdirectory under the installation prefix. If any toolchain component requires architecture or operating system-dependent patches. The purpose of the linker, usually called LD in the GNU toolchain and is to combine a number of object files and libraries and place them into an executable image.