## 1 Introduction ¶

The purpose of this book is to explain the use of the GNU C and C++ compilers, `gcc` and `g++`. After reading this book you should understand how to compile a program, and how to use basic compiler options for optimization and debugging. This book does not attempt to teach the C or C++ languages themselves, since this material can be found in many other places (see Further reading).

Experienced programmers who are familiar with other systems, but new to the GNU compilers, can skip the early sections of the chapters “Compiling a C program”, “Using the preprocessor” and “Compiling a C++ program”. The remaining sections and chapters should provide a good overview of the features of GCC for those already know how to use other compilers.