In a nut shell, emerging gconf-1.0.8-r2 gives a slew of errors: i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -I../gconf -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/include -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/include/orbit-1.0 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/include/orbit-1.0 -I/usr/include/gnome-xml -DGCONF_ENABLE_INTERNALS=1 -DG_LOG_DOMAIN=\"GConf-Backends\" -mcpu=i686 -march=i686 -O3 -pipe -Wall -DG_DISABLE_CHECKS=1 -DG_DISABLE_ASSERT=1 -Wp,-MD,.deps/xml-dir.pp -c xml-dir.c -fPIC -DPIC -o xml-dir.o xml-dir.c: In function `dir_load_doc': xml-dir.c:838: structure has no member named `root' xml-dir.c:841: structure has no member named `root' xml-dir.c:843: structure has no member named `root' . . . I manually emerged libxml (1.8.17-r2) and libxml2 (2.4.20), thinking they were out of date, though gconf doesn't list them as dependencies. It had no effect. In any case, that's the problem, and I'm not at all sure what's a resolution. Feel free to think of something.
hmm, none of the lines reported are fatal errors, could you please paste more of the log? this currently works for me, but I'll take it as assigned for a while and see if you get back.
xml-dir.c: In function `dir_load_doc': xml-dir.c:838: structure has no member named `root' xml-dir.c:841: structure has no member named `root' xml-dir.c:843: structure has no member named `root' xml-dir.c:843: structure has no member named `root' xml-dir.c:843: structure has no member named `root' . . . xml-dir.c:843: structure has no member named `root' xml-dir.c:847: structure has no member named `root' xml-dir.c: In function `dir_make_new_entry': xml-dir.c:893: structure has no member named `root' xml-dir.c: In function `dir_fill_cache_from_doc': xml-dir.c:926: structure has no member named `root' xml-dir.c:927: structure has no member named `root' xml-dir.c:933: structure has no member named `root' make[2]: *** [xml-dir.lo] Error 1 make[2]: Leaving directory `/var/tmp/portage/gconf-1.0.8-r2/work/GConf-1.0.8/bac kends' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/gconf-1.0.8-r2/work/GConf-1.0.8' make: *** [all-recursive-am] Error 2 !!! ERROR: The ebuild did not complete successfully. !!! Function src_compile, Line 16, Exitcode 2 !!! (no error message) !!! emerge aborting on /usr/portage/gnome-base/gconf/gconf-1.0.8-r2.ebuild . That space in between is the same line on the sides of the gap repeated a good many times. That's it, I think.
ok, please do this: emerge --clean rsync emerge libxml emerge gconf
That had no effect. However, I would like to note that I got the following warning in the ./configure section I hadn't noticed before: >>> Source unpacked. You should update your `aclocal.m4' by running aclocal. nls configure: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used. I tried running aclocal but got: aclocal: `configure.ac' or `configure.in' is required Any ideas would be appreciated..
Check if you have the /usr/include/gnome-xml/libxml symlink.
I have the symlink /usr/include/gnome-xml/libxml to /usr/include/gnome-xml. Is that what you mean? If it is, other ideas?
Hmm, "root" is defined in /usr/include/gnome-xml/tree.h, but since that is usually included via: "#include <libxml/tree.h>, you usually should have a symlink /usr/include/gnome-xml/libxml which points to /usr/include/gnome-xml. Normally when you get this problem, that symlink do not exist, and tree.h from libxml2 is included (/usr/include/libxml2/libxml/tree.h). Since you have this symlink, I am not sure as what the problem could be ... maybe weird internal include paths set by something (blabbering here :/). Try to unmerge libxml2, and then merge gconf, although it works fine here with both installed.
Any feedback ?
Sorry for taking so long to respond. Unmerging libxml2 allows gconf to compile, then I can reemerge libxml2 quite easily. I have no idea why it works like that, though.