[GCC-XML] gccxml doesn't accept absolute path names in #include

Brad King brad.king at kitware.com
Thu Feb 7 10:16:34 EST 2008

Thomas Heller wrote:
> gccxml 0.9 does not accept absolute pathnames on Windows; it worked
> fine with the 0.7 version.
> <file sample.h>
> #include "c:\\vc98\\include\\windows.h"
> <eof>
> C:\svn\theller\ctypeslib>\Programme\GCCXMLComplete\bin\gccxml x.h
> Warning:
> Compiler "cl" specified, but more than one of MSVC 6, 7, 7.1, and 8 are installed.
> Please specify "msvc6", "msvc7", "msvc71", or "msvc8" for the GCCXML_COMPILER setting.
> Using MSVC 7.1 because it was used to build GCC-XML.
> x.h:1:40: error: /Programme/GCCXMLComplete/share/gccxml-0.9/Vc71/Include/c:\\vc98\\include\\windows.h: Invalid argument
> C:\svn\theller\ctypeslib>
> The behaviour is the same whether I use <...> or "..." in the include directive,
> or whether I use forward or backward (single or double) slashes.  Seems like
> gccxml interprets the path as relative path name.
> Is there anything I can do to make it work?

Two things:

1.) You shouldn't need to specify a full path to get the Vc98 header 
files.  It looks like you're trying to use MSVC6 headers but gccxml is 
configured to use MSVC 7.1.  Try using just

   #include <windows.h>

and invoking gccxml like this:

   gccxml --gccxml-compiler msvc6 ...

2.) Update from CVS because I've fixed the bug.  It was a subtle issue 
introduced when I updated to the GCC 4.2 parser.


More information about the gccxml mailing list