## Further reading ¶

The definitive guide to GCC is the official reference manual, “Using GCC”, published by GNU Press:

> Using GCC (for GCC version 3.3.1) by Richard M. Stallman and the GCC Developer Community (Published by GNU Press, ISBN 1-882114-39-6)

This manual is essential for anyone working with GCC because it describes every option in detail. Note that the manual is updated when new releases of GCC become available, so the ISBN number may change in the future.

If you are new to programming with GCC you will also want to learn how to use the GNU Debugger GDB, and how to compile large programs easily with GNU Make. These tools are described in the following manuals:

> Debugging with GDB: The GNU Source-Level Debugger by Richard M. Stallman, Roland Pesch, Stan Shebs, et al. (Published by GNU Press, ISBN 1-882114-88-4)

> GNU Make: A Program for Directing Recompilation by Richard M. Stallman and Roland McGrath (Published by GNU Press, ISBN 1-882114-82-5)

For effective C programming it is also essential to have a good knowledge of the C standard library. The following manual documents all the functions in the GNU C Library:

> The GNU C Library Reference Manual by Sandra Loosemore with Richard M. Stallman, et al (2 vols) (Published by GNU Press, ISBN 1-882114-22-1 and 1-882114-24-8)

Be sure to check the website http://www.gnupress.org/ for the latest printed editions of manuals published by GNU Press. The manuals can be purchased online using a credit card at the FSF website46 in addition to being available for order through most bookstores using the ISBNs. Manuals published by GNU Press raise funds for the Free Software Foundation and the GNU Project.

Information about shell commands, environment variables and shell-quoting rules can be found in the following book:

> The GNU Bash Reference Manual by Chet Ramey and Brian Fox (Published by Network Theory Ltd, ISBN 0-9541617-7-7)

Other GNU Manuals mentioned in this book (such as GNU gprof—The GNU Profiler and The GNU Binutils Manual) were not available in print at the time this book went to press. Links to online copies can be found at the publisher’s webpage for this book.47

The official GNU Project webpage for GCC can be found on the GNU website at http://www.gnu.org/software/gcc/. This includes a list of frequently asked questions, as well as the GCC bug tracking database and a lot of other useful information about GCC.

There are many books about the C and C++ languages themselves. Two of the standard references are:

> The C Programming Language (ANSI edition) Brian W. Kernighan, Dennis Ritchie (ISBN 0-13110362-8)

> The C++ Programming Language (3rd edition) Bjarne Stroustrup (ISBN 0-20188954-4)

Anyone using the C and C++ languages in a professional context should obtain a copy of the official language standards, which are also available as printed books:

> The C Standard: Incorporating Technical Corrigendum 1 (Published by Wiley, ISBN 0-470-84573-2)

> The C++ Standard (Published by Wiley, ISBN 0-470-84674-7)

For reference, the C standard number is ISO/IEC 9899:1990, for the original C standard published in 1990 and implemented by GCC. A revised C standard ISO/IEC 9899:1999 (known as C99) was published in 1999, and this is mostly (but not yet fully) supported by GCC. The C++ standard is ISO/IEC 14882.

The floating-point arithmetic standard IEEE-754 is important for any programs involving numerical computations. The standard is available commercially from the IEEE, and is also described in the following book:

> Numerical Computing with IEEE Floating Point Arithmetic by Michael Overton (Published by SIAM, ISBN 0-89871-482-6).

The book includes many examples to illustrate the rationale for the standard.

#### Footnotes

##### (46)

http://order.fsf.org/

##### (47)

http://www.network-theory.co.uk/gcc/intro/