Welcome to the Getting Started section of the GCC Wiki

We are constantly looking for new developers who are willing to donate their time to advance GCC.

This section contains collected information geared towards folks who are new to GCC and may be feeling a bit lost in the barbaric jungles of GCC's source code. Although we are continuously trying to improve GCC's internal modularity and interfaces, the fact remains that GCC is about 20 years old, fairly large and we need to keep it working on the multitude of supported architectures and languages. So, getting to work with GCC can be a challenge.

Everyone is welcome to add links to tutorials, HOWTOs, cheat sheets, etc that may be floating around the net.

Basics: Contributing to GCC in 10 easy steps

  1. The most important formality that you need to go through: Copyright assignment.

  2. Accessing the sources:
  3. Building GCC: https://gcc.gnu.org/install/

  4. Testing GCC and Compile time and memory utilization testing

  5. Debugging GCC

  6. Formatting code for GCC

  7. How to communicate with the GCC community effectively

  8. Submitting patches

  9. Committing patches

  10. Profit!

Tutorials, HOWTOs

Internal documentation

Dealing with the source code

Structure Of GCC

Reporting and correcting bugs

When using Bugzilla, GCC maintainers (those having at least write after approval status to GCC trunk) should preferably use their username@gcc.gnu.org account to log in Bugzilla.