Inconsistent Compilation

View: New views
2 Messages — Rating Filter:   Alert me  

Inconsistent Compilation

by GlassEyeSlim :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

With the following include statement and the associated header file in the same directory as the .c file:

#include "stdio.h"

gcc will compile successfully using the following

$gcc -x none file.c

With the following include statement and the associated header file in /usr/include

#include <stdio.h"

gcc will not compile the file using any of the following

$gcc -x c file.c
$gcc -x none file.c
$gcc -std=c89 file.c

GES

Inconsistent Compilation - Precompiled Header

by GlassEyeSlim :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

How about this...

If I compile a file with the stdio.h header in the same directory, a precompiled header is kicked out: stdio.h.gch

If that .gch file is moved to /usr/include then compilation will proceed without any errors when the following statement is used:

#include <stdio.h>

According to: http://gcc.gnu.org/onlinedocs/gcc-3.4.1/gcc/Precompiled-Headers.html

only one precompiled header may be used during any compilation...so this proves to be a solution for small projects.

More...if the following is entered, a list of syntax errors results:

$ pwd
/usr/include
$ gcc -x none stdio.h

GES