Subject: various package build failures
To: None <tech-toolchain@netbsd.org>
From: Martijn van Buul <martijnb@atlas.ipv6.stack.nl>
List: tech-toolchain
Date: 02/16/2006 15:47:00
Hi.

My amd64 box developed a nasty case of no longer being able to build 
several packages, including devel/glib2 and www/firefox, possibly others.
The reason I'm posting this here is that I have a suspicion that the 
recent updates to the toolchain are involved. Using the same copy of
pkgsrc and its distfiles, these packages build OK if I use a sandbox
using the feb. 8 snapshot. However, they no longer work on a freshly built
system. They all die similarly, during linking:

cc -shared  .libs/garray.o .o .libs/gcache.o .libs/gcompletion.o .libs/gconvert.o .libs/gdataset.o .libs/gdate.o .libs/gdir.o .libs/gerror.o .libs/gfileutils.o .libs/ghash.o .libs/ghook.o .libs/giochannel.o .libs/gkeyfile.o .libs/glist.o .libs/gmain.o .libs/gmappedfile.o .libs/gmarkup.o .libs/gmem.o .libs/gmessages.o .libs/gnode.o .libs/goption.o .libs/gpattern.o .libs/gprimes.o .libs/gqsort.o .libs/gqueue.o .libs/grel.o .libs/grand.o .libs/gscanner.o .libs/gshell.o .libs/gslist.o .libs/gstdio.o .libs/gstrfuncs.o .libs/gstring.o .libs/gthread.o .libs/gthreadpool.o .libs/gtimer.o .libs/gtree.o .libs/guniprop.o .libs/gutf8.o .libs/gunibreak.o .libs/gunicollate.o .libs/gunidecomp.o .libs/gutils.o .libs/gprintf.o .libs/giounix.o .libs/gspawn.o -Wl,--whole-archive libcharset/.libs/libcharset.a gnulib/.libs/libgnulib.a -Wl,--no-whole-archive  -L/usr/pkgobjdir/devel/glib2/work/.buildlink/lib -lintl  -Wl,-R/usr/pkg/lib -Wl,-soname -Wl,libglib-2.0.so.0 -Wl,-retain-symbols-file -Wl,.li
 bs/libglib-2.0.exp -o .libs/libglib-2.0.so.0.800.6
ld: .libs/gconvert.o: relocation R_X86_64_PC32 against `_g_charset_get_aliases' can not be used when making a shared object; recompile with -fPIC
ld: final link failed: Bad value

However, .libs/gconvert.o *has* been compiled with -fPIC:

 cc -DHAVE_CONFIG_H -I. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_ENABLE_DEBUG -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -DPREFIX=\"/usr/pkg\" -DPKGLOCALEDIR=\"share\" -DPKG_SYSCONFDIR=\"/etc/pkg\" -pthread -O2 -Wall -MT gconvert.lo -MD -MP -MF .deps/gconvert.Tpo -c gconvert.c  -fPIC -DPIC -o .libs/gconvert.o
 
Any ideas?