stdio.h: File not found?!?

Martin Krischik krischik@users.sourceforge.net
Thu Apr 6 18:32:00 GMT 2006


Am Donnerstag, 6. April 2006 15:18 schrieb Kai Ruottu:

> Martin Krischik kirjoitti:

> Producing GCC requires a "complete C compiler".  The "ISO99 C compiler"
> the "Prerequisites" in the "Installing GCC" talks about is something
> very weird
> gibberish for most people.  Because GCC oneself cannot produce GCC, then
> GCC isn't a "ISO99 C compiler" or how?

> Even "compiling" that "Hello World" has the "#include <stdio.h>", so
> most newbies
> know these (target) headers being obligatory. "Linking" it then requires
> the startups
> and those target libraries ('libc' usually but with MinGW that is
> 'libmsvcrt').  So what
> you think a compiler being differs horribly about what a newbie thinks
> it being and
> what one can do with a "compiler"... Usually this requirement is "It can
> compile the
> Hello World", and here that "compile" means "producing the executable
> "hello.exe"
> from the source "hello.c" !

Actually I have spend the $ 18 on an copy of the ISO/IEC 9899/1999 and read 
id. The standart consists of:

A) A programming and runtime environment (Chapter 5)
B) A programming language (Chapter 6)
C) A predefined library (Chapter 7)

And <stdio.h> is part of the predefined language library (Chapter 7.19, Page 
261 to 303). A fully compliant language environment must provide them - not 
the operating system.

Because the standart is far broader then you can obviously imagine: The 
standart covers covers operating systems not written in C.

That GCC expects the operating system to provide 240 pages of its language 
definition is a bit cheeky. Especially since the standart consists only of 
540 pages.

So to answer your initial question: GCC on its own is indeed not a C99 
compliant language environment - only in combination with glibc it becomes 
C99 compliant. 

On the other hand: if you set "--enable-languages=c,ada" you get the full Ada 
compiler and the predefined library to go with it as defined in the ISO/IEC 
8652:1995. No need to install some libada first.

Martin
-- 
Martin Krischik
mailto://krischik@users.sourceforge.net
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc-help/attachments/20060406/e2a0e53b/attachment-0001.sig>


More information about the Gcc-help mailing list