I upgraded to gcc 4.1.1 along the way, while building 180 something of
the 450 or so packages that emerge -e world wanted to build,
dev-lang/glib-2.10.3 failed to build with the following:

>>> checking ebuild checksums ;-)
>>> checking auxfile checksums ;-)
>>> checking miscfile checksums ;-)
>>> checking glib-2.10.3.tar.bz2 ;-)
>>> Unpacking source...
>>> Unpacking glib-2.10.3.tar.bz2 to /var/tmp/portage/glib-2.10.3/work
 Applying glib-2.8.3-macos.patch ...
>>> Source unpacked.
>>> Compiling source in /var/tmp/portage/glib-2.10.3/work/glib-2.10.3
...
 Removing useless C++ checks ...
Running elibtoolize in: glib-2.10.3
 Applying portage-1.5.10.patch ...
 Applying max_cmd_len-1.5.20.patch ...
 Applying sed-1.5.6.patch ...
 * econf: updating glib-2.10.3/config.guess with
/usr/share/gnuconfig/config.guess
 * econf: updating glib-2.10.3/config.sub with
/usr/share/gnuconfig/config.sub
/usr/bin/confcache --confcache-ignore /var/tmp/ccache:/var/tmp/.distcc
--confcache-dir /var/tmp/confcache ./configure --prefix=/usr
--host=x86_64-pc-linux-gnu --mandir=/usr/share/man
--infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc
--localstatedir=/var/lib --enable-gtk-doc --with-threads=posix
--libdir=/usr/lib64 --build=x86_64-pc-linux-gnu
configure: loading cache config.cache
checking for a BSD-compatible install... (cached) /bin/install -c
checking whether build environment is sane... yes
checking for gawk... (cached) gawk
.
.
.
.if x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../glib
-I../gmodule -DG_DISABLE_CAST_CHECKS  -pthread  -march=opteron -O3 -pipe
-fomit-frame-pointer -ftracer -Wall -MT timeloop-closure.o -MD -MP -MF
".deps/timeloop-closure.Tpo" \
  -c -o timeloop-closure.o `test -f 'timeloop-closure.c' || echo
'./'`timeloop-closure.c; \
then mv -f ".deps/timeloop-closure.Tpo" ".deps/timeloop-closure.Po"; \
else rm -f ".deps/timeloop-closure.Tpo"; exit 1; \
fi
/bin/sh ../libtool --mode=link x86_64-pc-linux-gnu-gcc  -march=opteron
-O3 -pipe -fomit-frame-pointer -ftracer -Wall   -o
libmoduletestplugin_a.la -rpath /usr/lib64 -Wl,--export-dynamic
-avoid-version -module  -rpath /usr/lib64 libmoduletestplugin_a.lo    
/bin/sh ../libtool --mode=link x86_64-pc-linux-gnu-gcc  -march=opteron
-O3 -pipe -fomit-frame-pointer -ftracer -Wall   -o
libmoduletestplugin_b.la -rpath /usr/lib64 -Wl,--export-dynamic
-avoid-version -module  -rpath /usr/lib64 libmoduletestplugin_b.lo    
/bin/sh ../libtool --mode=link x86_64-pc-linux-gnu-gcc  -march=opteron
-O3 -pipe -fomit-frame-pointer -ftracer -Wall   -o testglib  testglib.o
../glib/libglib-2.0.la 
x86_64-pc-linux-gnu-gcc -shared  .libs/libmoduletestplugin_b.o
-march=opteron -Wl,--export-dynamic -Wl,-soname
-Wl,libmoduletestplugin_b.so -o .libs/libmoduletestplugin_b.so
creating libmoduletestplugin_b.la
(cd .libs && rm -f libmoduletestplugin_b.la && ln -s
../libmoduletestplugin_b.la libmoduletestplugin_b.la)
x86_64-pc-linux-gnu-gcc -shared  .libs/libmoduletestplugin_a.o
-march=opteron -Wl,--export-dynamic -Wl,-soname
-Wl,libmoduletestplugin_a.so -o .libs/libmoduletestplugin_a.so
/bin/sh ../libtool --mode=link x86_64-pc-linux-gnu-gcc  -march=opteron
-O3 -pipe -fomit-frame-pointer -ftracer -Wall   -o testgdate
testgdate.o ../glib/libglib-2.0.la 
creating libmoduletestplugin_a.la
(cd .libs && rm -f libmoduletestplugin_a.la && ln -s
../libmoduletestplugin_a.la libmoduletestplugin_a.la)
/bin/sh ../libtool --mode=link x86_64-pc-linux-gnu-gcc  -march=opteron
-O3 -pipe -fomit-frame-pointer -ftracer -Wall   -o testgdateparser
testgdateparser.o ../glib/libglib-2.0.la 
x86_64-pc-linux-gnu-gcc -march=opteron -O3 -pipe -fomit-frame-pointer
-ftracer -Wall -o .libs/testglib testglib.o
../glib/.libs/libglib-2.0.so
testglib.o: In function `main':
testglib.c:(.text+0x4d0): undefined reference to `glib_binary_age'
testglib.c:(.text+0x4dc): undefined reference to `glib_interface_age'
testglib.c:(.text+0x4e2): undefined reference to `glib_micro_version'
testglib.c:(.text+0x4e8): undefined reference to `glib_minor_version'
testglib.c:(.text+0x4ee): undefined reference to `glib_major_version'
collect2: ld returned 1 exit status
make[3]: *** [testglib] Error 1
make[3]: *** Waiting for unfinished jobs....

************************************************************************
**********************

I tried masking glib-2.10.3 and building a lower version, same result.
Since gcc 3.4.6 was my previous compiler, I tried runniing
"fix_libtool_files.sh 3.4.6," no joy. Then, I vaguely remembered a
message here recently, that mentioned something about the confcache
feature of portage causing a problem for someone during a gcc upgrade. I
commented out the FEATURES="confcache" line in make.conf and deleted
everything from /var/tmp/confcache, afterward, lo and behold glib-2.10.3
built and installed without error.

The description for confcache says: "GNU autoconf is a bottleneck for
compiling packages - especially on multi-processor boxes, confcache had
been considered as a way to lower the cost of repeatedly running
autoconf-generated configure scripts." Since this is a dual Opteron box
I'd like to use confcache, seems that it might save some time while
building the 450 or so packages that I now need to start over on
rebuilding. Of course if confcache had worked correctly I wouldn't need
to start over.

I've looked in the man pages and searched the web for confcache
information, but haven't found much. 

1. Should I have known that I needed to do something to confcache after
upgrading gcc, is that "common knowledge" that I missed somehow?

2. Can I safely re-enable confcache before restarting the emerge -e
world?

   I did find this http://bugs.gentoo.org/show_bug.cgi?id=133902, and
the comments in the "master" confcache bug seem to indicate that the
"error" is in an ebuild     previous to the one that failed. If I had
not deleted /var/tmp/confcache/config.cache I'd have sent in the
requested information to help resolve this bug. I can't tell from the
comments whether or not it's safe to re-enable confcache with a new
fresh database, or if there are just some ebuilds that break when it's
enabled.

3. Is there any info regarding refreshing, updating, maintaining,
confcache's cache, specifically how, when, and what to do?


TIA
Bob Young
San Jose, CA.

-- 
gentoo-user@gentoo.org mailing list

Reply via email to