DevOps

GCC – the GNU Compiler Collection

The GNU Compiler Collection is a full-featured ANSI C compiler with support for K&R C, as well as C++, Objective C, Java, Objective C++, Ada and Fortran.

GCC provides many levels of source code error checking traditionally provided by other tools (such as lint), produces debugging information, and can perform many different optimizations to the resulting object code.

It is a portable compiler; it runs on most platforms available today, and can produce output for many types of processors. In addition to the processors used in personal computers, it also supports microcontrollers, DSPs and 64-bit CPUs.

GCC is the most widely used compiler in Open Source development.

GCC used to stand for the GNU C Compiler, but since the compiler supports several other languages aside from C, it now is an acronym for the GNU Compiler Collection.

Key Features

  • Native compiler.
  • Can also cross-compile any program, producing executable files for a different system from the one used by GCC itself.
  • Declared and synthesized properties.
  • Dot syntax.
  • Fast enumeration.
  • Optional protocol methods.
  • Method/protocol/class attributes.
  • Class extensions.
  • GNU Objective-C runtime API.
  • Multiple language frontends, for parsing different languages including:
    • C (gcc).
    • C++ (g++).
    • Java (gcj).
    • Ada (GNAT).
    • Objective-C (gobjc).
    • Objective-C++ (gobjc++).
    • Fortran (gfortran).
    • Modula-2.
    • Modula-3.
    • Pascal (gpc).
    • PL/I.
    • D (gdc).
    • Mercury.
    • VHDL (ghdl).
  • A modular design, allowing support for new languages and architectures to be added.
  • Uses C++ as its implementation language.

Website: gcc.gnu.org
Support: FAQ
Developer: GNU Project
License: GNU General Public License v3.0 with GCC Runtime Library Exception


Related Software

Compilers
GNU Compiler CollectionThe standard compiler for most Unix-like operating systems
rustcCompiler for the Rust programming language
AOCCAMD Optimizing C/C++ Compiler
LLVMLow-Level Virtual Machine (LLVM) compiler for C/C++
ispcIntel SPMD Program Compiler
BabelJavaScript compiler - use next generation JavaScript
Glasgow Haskell CompilerAn optimizing compiler for Haskell, written in Haskell
ClangC Language Family Frontend for LLVM
NuitkaOptimizing Python compiler
CHICKENCompiler for the Scheme programming language
FreeBASIC32-bit BASIC compiler
NumbaCompiler for Python array and numerical functions
Free PascalAdvanced Pascal compiler for Pascal and Object Pascal
NASMAssembler for the x86 CPU architecture
BiglooPractical Scheme compiler

Read our verdict in the software roundup.


Best Free and Open Source Software Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.

This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk.

You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more.

Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form.
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments