1<html lang="en"> 2<head> 3<title>Standard Libraries - Using the GNU Compiler Collection (GCC)</title> 4<meta http-equiv="Content-Type" content="text/html"> 5<meta name="description" content="Using the GNU Compiler Collection (GCC)"> 6<meta name="generator" content="makeinfo 4.13"> 7<link title="Top" rel="start" href="index.html#Top"> 8<link rel="up" href="Trouble.html#Trouble" title="Trouble"> 9<link rel="prev" href="Fixed-Headers.html#Fixed-Headers" title="Fixed Headers"> 10<link rel="next" href="Disappointments.html#Disappointments" title="Disappointments"> 11<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> 12<!-- 13Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 141998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 152010 Free Software Foundation, Inc. 16 17Permission is granted to copy, distribute and/or modify this document 18under the terms of the GNU Free Documentation License, Version 1.3 or 19any later version published by the Free Software Foundation; with the 20Invariant Sections being ``Funding Free Software'', the Front-Cover 21Texts being (a) (see below), and with the Back-Cover Texts being (b) 22(see below). A copy of the license is included in the section entitled 23``GNU Free Documentation License''. 24 25(a) The FSF's Front-Cover Text is: 26 27 A GNU Manual 28 29(b) The FSF's Back-Cover Text is: 30 31 You have freedom to copy and modify this GNU Manual, like GNU 32 software. Copies published by the Free Software Foundation raise 33 funds for GNU development.--> 34<meta http-equiv="Content-Style-Type" content="text/css"> 35<style type="text/css"><!-- 36 pre.display { font-family:inherit } 37 pre.format { font-family:inherit } 38 pre.smalldisplay { font-family:inherit; font-size:smaller } 39 pre.smallformat { font-family:inherit; font-size:smaller } 40 pre.smallexample { font-size:smaller } 41 pre.smalllisp { font-size:smaller } 42 span.sc { font-variant:small-caps } 43 span.roman { font-family:serif; font-weight:normal; } 44 span.sansserif { font-family:sans-serif; font-weight:normal; } 45--></style> 46<link rel="stylesheet" type="text/css" href="../cs.css"> 47</head> 48<body> 49<div class="node"> 50<a name="Standard-Libraries"></a> 51<p> 52Next: <a rel="next" accesskey="n" href="Disappointments.html#Disappointments">Disappointments</a>, 53Previous: <a rel="previous" accesskey="p" href="Fixed-Headers.html#Fixed-Headers">Fixed Headers</a>, 54Up: <a rel="up" accesskey="u" href="Trouble.html#Trouble">Trouble</a> 55<hr> 56</div> 57 58<h3 class="section">11.6 Standard Libraries</h3> 59 60<p><a name="index-Wall-3321"></a>GCC by itself attempts to be a conforming freestanding implementation. 61See <a href="Standards.html#Standards">Language Standards Supported by GCC</a>, for details of 62what this means. Beyond the library facilities required of such an 63implementation, the rest of the C library is supplied by the vendor of 64the operating system. If that C library doesn't conform to the C 65standards, then your programs might get warnings (especially when using 66<samp><span class="option">-Wall</span></samp>) that you don't expect. 67 68 <p>For example, the <code>sprintf</code> function on SunOS 4.1.3 returns 69<code>char *</code> while the C standard says that <code>sprintf</code> returns an 70<code>int</code>. The <code>fixincludes</code> program could make the prototype for 71this function match the Standard, but that would be wrong, since the 72function will still return <code>char *</code>. 73 74 <p>If you need a Standard compliant library, then you need to find one, as 75GCC does not provide one. The GNU C library (called <code>glibc</code>) 76provides ISO C, POSIX, BSD, SystemV and X/Open compatibility for 77GNU/Linux and HURD-based GNU systems; no recent version of it supports 78other systems, though some very old versions did. Version 2.2 of the 79GNU C library includes nearly complete C99 support. You could also ask 80your operating system vendor if newer libraries are available. 81 82 </body></html> 83 84