The GNU Compiler Collection (GCC) is a set of compilers and development tools produced by the GNU Project that supports various programming languages, hardware architectures, and operating systems. GCC includes front ends for C, C++, Objective-C, Fortran, Ada, Go, and D, as well as libraries for these languages. It is distributed as free software under the GNU General Public License (GNU GPL) by the Free Software Foundation (FSF) . GCC is a key component of the GNU toolchain and the standard compiler for most projects related to GNU and the Linux kernel. It has been ported to more platforms and instruction set architectures than any other compiler and is widely deployed as a tool in the development of both free and proprietary software. GCC is also available for many embedded systems, including ARM-based and Power ISA-based chips. When you run GCC on a source code file, it first compiles the code, links it with any library dependencies, converts that code to assembly, and then prepares executable files.