Provided by: manpages_4.04-2_all bug

NAME

       libc - overview of standard C libraries on Linux

DESCRIPTION

       The  term  "libc"  is  commonly  used  as a shorthand for the "standard C library", a library of standard
       functions that can be used by all C programs (and sometimes by programs in other languages).  Because  of
       some history (see below), use of the term "libc" to refer to the standard C library is somewhat ambiguous
       on Linux.

   glibc
       By far the most widely used C library on Linux is the GNU C Library  ⟨http://www.gnu.org/software/libc/⟩,
       often  referred  to  as  glibc.   This  is  the  C  library  that  is  nowadays  used  in all major Linux
       distributions.  It is also the C library whose details are documented in the relevant pages of  the  man-
       pages  project  (primarily  in Section 3 of the manual).  Documentation of glibc is also available in the
       glibc manual, available via the command info libc.  Release 1.0 of glibc  was  made  in  September  1992.
       (There were earlier 0.x releases.)  The next major release of glibc was 2.0, at the beginning of 1997.

       The  pathname  /lib/libc.so.6  (or  something  similar)  is  normally  a symbolic link that points to the
       location of the glibc  library,  and  executing  this  pathname  will  cause  glibc  to  display  various
       information about the version installed on your system.

   Linux libc
       In  the  early  to  mid  1990s,  there  was  for a while Linux libc, a fork of glibc 1.x created by Linux
       developers who felt that glibc development at the time was not sufficing for the needs of Linux.   Often,
       this  library  was referred to (ambiguously) as just "libc".  Linux libc released major versions 2, 3, 4,
       and 5 (as well as many minor versions of those releases).  For a while, Linux libc  was  the  standard  C
       library in many Linux distributions.

       However,  notwithstanding  the  original  motivations of the Linux libc effort, by the time glibc 2.0 was
       released (in 1997), it was clearly superior to Linux libc, and all major  Linux  distributions  that  had
       been  using  Linux  libc  soon switched back to glibc.  Since this switch occurred long ago, man-pages no
       longer takes care to document Linux libc details.  Nevertheless, the history is visible  in  vestiges  of
       information  about  Linux  libc  that remain in some manual pages, in particular, references to libc4 and
       libc5.

   Other C libraries
       There are various other less widely used C libraries for Linux.  These libraries  are  generally  smaller
       than  glibc,  both  in  terms  of  features  and  memory footprint, and often intended for building small
       binaries, perhaps targeted at development for embedded Linux systems.  Among such  libraries  are  uClibchttp://www.uclibc.org/⟩,   dietlibchttp://www.fefe.de/dietlibc/⟩,  and  musl  libchttp://www.musl-
       libc.org/⟩.  Details of these libraries are covered by the man-pages project, where they are known.

SEE ALSO

       syscalls(2), getauxval(3), proc(5), feature_test_macros(7), man-pages(7), standards(7), vdso(7)

COLOPHON

       This page is part of release 4.04 of  the  Linux  man-pages  project.   A  description  of  the  project,
       information   about   reporting   bugs,   and   the  latest  version  of  this  page,  can  be  found  at
       http://www.kernel.org/doc/man-pages/.