* CPP can't see some header file
@ 2006-09-07 3:44 Tommy
0 siblings, 0 replies; only message in thread
From: Tommy @ 2006-09-07 3:44 UTC (permalink / raw)
To: gcc-help
Hi all,
I use GCC 2.95.2 (sparc-leon2, for cygwin) in my win2k platform. Recently I
encountered a problem on the C preprocessor (error messages go as
follows).
source1.c: In function `_my_function1':
source1.c:185: `DEFINE_SYMBOL_NUM_001' undeclared (first use in this
function)
source1.c:185: (Each undeclared identifier is reported only once
source1.c:185: for each function it appears in.)
make[1]: *** [OBJS/source1.o] Error 1
This file, source1.c, is built in a directory "Src_235a". If I
change its name into "Src_235b", "Src_236a", or something different,
this error will be gone. This looks funny -- if I change the name of
directory, or change the name of some header file (defines that lost
symbol), the compiling goes okay.
I added flags -H and -v in my CFLAGS and got the internal calling
contents of CPP (listed below):
/opt/rtems/lib/gcc-lib/sparc-rtems/2.95.2/cpp.exe -lang-c -v -I
/ecos-c/Prj/product/ecos_build/leon_release_install/include
-D__GNUC__=2 -D__GNUC_MINOR__=95 -Dsparc -D__GCC_NEW_VARARGS__ -Drtems
-D__rtems__ -D__sparc__ -D__GCC_NEW_VARARGS__ -D__rtems__ -D__rtems__
-D__sparc -D__rtems -Asystem(rtems) -Acpu(sparc) -Amachine(sparc)
-D__OPTIMIZE_SIZE__ -D__OPTIMIZE__ -g -Wall -Wpointer-arith
-Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -H
-D__GCC_NEW_VARARGS__ -Acpu(sparc) -Amachine(sparc) -Asystem(embedded)
-D__leon__ -Dleon -DROMCODE source1.c
Then I did some trials.
1. If I call CPP directly and use no arguments, I will get consistent
results for both directory "Src_235a" and "Src_235b".
2. If I call CPP using full arguments (as listed above), the dump
results go different: the "Src_235a" one doesn't include that header
file (defines symbol DEFINE_SYMBOL_NUM_001), and the other includes
correctly.
This problem can be traced till here (in CPP-level). If I duplicate
the same directory hierarchy in another win2k PC (and also use the
same LECCS-1.1.5 toolchain), it works fine and no such odd problem.
I also tried to update cygwin libraries/DLLs and that didn't help.
Do you have any idea to fingure out what's wrong with such a problem?
Tommy.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2006-09-07 3:44 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-09-07 3:44 CPP can't see some header file Tommy
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).