- publishing free software manuals
Picture of Cover

An Introduction to GCC

by Brian J. Gough, foreword by Richard M. Stallman

Paperback (6"x9"), 144 pages. Revised August 2005.
Retail Price: $19.95 (£12.95 in UK)
ISBN: 0-9541617-9-3 (ISBN-13: 978-0-9541617-9-8)


This book has received many positive comments, including a top-rated 5-star review in Linux User and Developer Magazine:
"A wonderfully thorough guide... well-written, seriously usable information" --- Linux User and Developer Magazine (Issue 40, June 2004)
"An excellent introduction... fills a much-needed niche in the marketplace" --- Association of C and C++ Users book review (Issue 16-4, August 2004)
"Answers common questions and provides many useful hints" --- Dr. Gerald Pfeifer (SUSE) -- Technical Editor

About the Book

This manual provides a tutorial introduction to the GNU C and C++ compilers, gcc and g++.

Many books teach the C and C++ languages, this book explains how to use the compiler itself. Based on years of observation of questions posted on mailing lists, it guides the reader straight to the important options of GCC!

Concisely written, with numerous easy-to-follow "Hello World" examples.

Now with extensive new sections on error messages, portability and floating point arithmetic!

Features a special foreword by Richard M. Stallman, principal developer of GCC and founder of the GNU Project.

The technical editor of this book is Dr. Gerald Pfeifer of SUSE (homepage).

You can examine the contents of the printed book here,

All the money raised from the sale of this book supports the development of free software and documentation.

This book is published under the GNU Free Documentation License.


You can buy the book online at the following bookstores:

The manual can also be ordered from most physical bookstores using the ISBN number.

Note: some bookstore websites may show old bibliographic data in some fields (e.g. old publication date or page count) or old "Search Inside" page images. This is only a problem with the data--all bookstores are physically shipping the latest version of the book.

Print out the following flyer for detailed bookstore and library ordering information,

If the title is listed as "out-of-stock", please ask the bookstore to place an order with one of the wholesale suppliers given in the flyer.

If you encounter any difficulties in obtaining this book, please send an email to sales@network-theory.co.uk for assistance.

If you are not completely satisfied with your purchase for any reason we will gladly issue a full refund or replacement (details).

Related Titles

Further Information

For questions about this book, please use our email address sales@network-theory.co.uk.

Table of Contents

  1. Foreword by Richard M. Stallman
  2. Introduction
  3. Compiling a C program
  4. Compilation options
  5. Using the preprocessor
  6. Compiling for debugging
  7. Compiling with optimization
  8. Compiling a C++ program
  9. Platform-specific options
  10. Troubleshooting
  11. Compiler-related tools
  12. How the compiler works
  13. Examining compiled files
  14. Common error messages
  15. Getting help
  16. Further Reading
  17. Acknowledgements
  18. Concept Index

Online Manuals


Support Companies

For a list of support companies and consultants see the GNU Service Directory

Development Companies

The following companies are involved in the development of GCC itself:



The following errors in the first version have been corrected in the revised printing of August 2005:

On page 12, regarding the reference to old compilers, the link order of object files was only an issue for libraries, not individual object files. (Thanks to Martin Leisner of Xerox)

On page 38, in an interactive shell the option -DMESSAGE="\"Hello, World!\"" should be typed as -DMESSAGE='"Hello, World!"', to prevent history expansion of !. The version in the book works in a non-interactive shell-script or Makefile. (Thanks to Mario Pernici of INFN)