On Wed, Mar 26, 2003 at 10:29:51AM -0500, Daniel Jacobowitz wrote:
> On Wed, Mar 26, 2003 at 01:31:28PM +0100, Diether Knof wrote:
> > Package: gcc-3.2
> > Version: 3.2.1-0pre3
> >
> > When I use gcc-3.2 with the -MM option for the dependencies, I also get dependencies of the gtk libraries, which I include from the system. I think, gcc does not look at the include directories, included with '-I' ('gtk-config --cflags' outputs '-I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/X11R6/include').
> > With the version 3.0 and 2.95 everything works fine.
>
> >From the documentation:
> `-MM'
> Like `-M' but do not mention header files that are found in system
> header directories, nor header files that are included, directly
> or indirectly, from such a header.
>
> This implies that the choice of angle brackets or double quotes in
> an `#include' directive does not in itself determine whether that
> header will appear in `-MM' dependency output. This is a slight
> change in semantics from GCC versions 3.0 and earlier.
Thanks, I just invoked 'man gcc' and got the documentation for gcc-2.95.
Do you know, why this has changed? For me, it does not make sense.
> If you change -I to -isystem, then the right thing should happen; not
> sure about that though.
Yes, that works (so I now use `gtk-config --cflags | sed "s/-I/-isystem /g"`).
Thanks
Diether Knof
Attachment:
pgpKeif_qoYDq.pgp
Description: PGP signature