Dunno if that's an upstream bug.I came across this after overlay glib-2.15.1 installation. Several gnome2 ebuilds failed to compile with tons of error messages about redefinintions: Example: /bin/sh ../libtool --tag=CC --mode=compile x86_64-pc-linux-gnu-gcc -DHAVE_CONF IG_H -I. -I.. -I.. -I../src/plparser -DTOTEM_PL_PARSER_MINI -pthread -DORBIT 2=1 -I/usr/include/gnome-vfs-2.0 -I/usr/lib64/gnome-vfs-2.0/include -I/usr/inclu de/gconf/2 -I/usr/include/orbit-2.0 -I/usr/include/glib-1.2 -I/usr/lib64/glib/in clude -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gnome -vfs-module-2.0 -Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith -W no-sign-compare -Wall -Wchar-subscripts -Wmissing-declarations -Wmissi ng-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wsign-comp are -fno-strict-aliasing -march=athlon64 -O2 -pipe -MT libtotem_plparser_ mini_la-totem-pl-parser-misc.lo -MD -MP -MF .deps/libtotem_plparser_mini_la-tote m-pl-parser-misc.Tpo -c -o libtotem_plparser_mini_la-totem-pl-parser-misc.lo `te st -f 'totem-pl-parser-misc.c' || echo './'`totem-pl-parser-misc.c In file included from totem-pl-parser.c:39: /usr/include/glib-1.2/glib.h:163:1: warning: "G_STRUCT_OFFSET" redefined In file included from /usr/lib64/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-1.2/glib.h:66, from totem-pl-parser.c:39: /usr/include/glib-2.0/glib/gmacros.h:198:1: warning: this is the location of the previous definition In file included from totem-pl-parser.c:39: /usr/include/glib-1.2/glib.h:165:1: warning: "G_STRUCT_MEMBER_P" redefined In file included from /usr/lib64/glib-2.0/include/glibconfig.h:9, In file included from /usr/lib64/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-1.2/glib.h:66, from totem-pl-parser.c:39: /usr/include/glib-2.0/glib/gmacros.h:200:1: warning: this is the location of the previous definition etc, etc, etc........ and then failing with /usr/include/glib-1.2/glib.h:502: error: conflicting types for 'gssize' /usr/lib64/glib-2.0/include/glibconfig.h:59: error: previous declaration of 'gssize' was here It took me a while to realize what's going on, because some ebuilds compiled while others were broken I removed glib-1.2.10-r5 from my system and run revdep-rebuild with 39 packages of gnome2 applications that were linked against glib-1.2.so.0 Just in the process of re-emerging but so far all ebuilds compile when glib-1.2.10-r5 is not present in my system. Reproducible: Always Steps to Reproduce: 1.Have slotted glib-2.15.1 and glib-1.2.10-r5 2.emerge gnome2 applications 3. Actual Results: Using glib-1 headers for compilation and link against glib-1.2.so.0 Expected Results: Gnome2 should not compile and link against glib-1
paste your emerge --info please
Could you also paste here the output of `pkg-config glib-2.0 --cflags` and `pkg-config glib-2.0 --libs` Thanks
Created attachment 140856 [details, diff] Patch for the gconf-2.21.1-pc.in file Well, after rebuilding package by package starting with glib-2.15.1 I found that glib-1.2 was pulled in after I emerged gconf-2.21.1. Looking at the gnome SVN I found that upstream patched the gconf-2.0.pc.in file (unfortunately post-release 2.21.1). The pc.in file in gconf-2.21.1 pulls in glib and not glib-2.0. The patch attached cures all problems reported here. (I don't think you'll need emerge --info and pkg-config glib-2.0 --libs). Ah, the patch was stored on a dos file system could be that you have to change the line endings, sorry for that. Here's the upstream link http://svn.gnome.org/viewvc/gconf/trunk/gconf-2.0.pc.in?r1=2505&r2=2506&view=patch
(In reply to comment #2) > Could you also paste here the output of `pkg-config glib-2.0 --cflags` and > `pkg-config glib-2.0 --libs` > > Thanks > Here's the more interesting output of # pkg-config gconf-2.0 --cflags -DORBIT2=1 -pthread -I/usr/include/gconf/2 -I/usr/include/orbit-2.0 -I/usr/include/glib-1.2 -I/usr/lib64/glib/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include # pkg-config gconf-2.0 --libs -lgconf-2 -lglib It's with the original build of gconf-2.21.1 with glib-2.15.1 and glib-1.2.10-r5 installed together and this is the output after editing gconf-2.0.pc like with the patch # pkg-config gconf-2.0 --cflags -DORBIT2=1 -pthread -I/usr/include/gconf/2 -I/usr/include/orbit-2.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include # pkg-config gconf-2.0 --libs -lgconf-2 -lglib-2.0
@herd, patch is good, should anyone want to commit it before me :)
fixed by gconf-2.21.2 version bump (though this typo made me really headaches)