Next Previous Contents

2. Where to get things

2.1 This document

This document is one of the Linux HOWTO series, so is available from all Linux HOWTO repositories, such as The HTML version can also be found (possibly in a slightly newer version) from

2.2 Other documentation

The official documentation for gcc is in the source distribution (see below) as texinfo files, and as .info files. If you have a fast network connection, a cdrom, or a reasonable amount of patience, you can just untar it and copy the relevant bits into /usr/info. If not, you may find them at tsx-11, but not necessarily always the latest version.

There are two source of documentation for libc. GNU libc comes with info files which describe Linux libc fairly accurately except for stdio. Also, the manpages archive are written for Linux and describe a lot of system calls (section 2) and libc functions (section 3).

2.3 GCC

There are two answers.

(a) The official Linux GCC distribution can always be found in binary (ready-compiled) form at At the time of writing, 2.7.2 (gcc-2.7.2.bin.tar.gz) is the latest version.

(b) The latest source distribution of GCC from the Free Software Foundation can be had from GNU archives. This is not necessarily always the same version as above, though it is just now. The Linux GCC maintainer(s) have made it easy for you to compile the latest version available yourself --- the configure script should set it all up for you. Check tsx-11 as well, for patches which you may want to apply.

To compile anything non-trivial (and quite a few trivial things also) you will also need the

2.4 C library and header files

What you want here depends on (i) whether your system is ELF or a.out, and (ii) which you want it to be. If you're upgrading from libc 4 to libc 5, you are recommended to look at the ELF-HOWTO from approximately the same place as you found this document.

These are available from tsx-11 as above:


--- ELF shared library images, static libraries and include files for the C and maths libraries.


--- Source for the above. You will also need the .bin. package for the header files. If you are deliberating whether to compile the C library yourself or use the binaries, the right answer in nearly all cases is to use the binaries. You will however need to roll your own if you want NYS or shadow password support.


--- a.out shared library images and static libraries for version 4.7.5 of the C library and friends. This is designed to coexist with the libc 5 package above, but is only really necessary if you wish to keep using/developing a.out format programs.

2.5 Associated tools (as, ld, ar, strings etc)

From tsx-11, just like everything else so far. The current version is binutils-

Note that the binutils are only available in ELF, the current libc version is in ELF and the a.out libc is happiest when used in conjunction with an ELF libc. C library development is moving emphatically ELFwards, and unless you have really good reasons for needing a.out things you're encouraged to follow suit.

Next Previous Contents