Subject: toolchain/32954: devel/glib2 fails to build under current/amd64 due to ld bug
To: None <toolchain-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <martijnb@atlas.ipv6.stack.nl>
List: netbsd-bugs
Date: 02/28/2006 20:05:00
>Number: 32954
>Category: toolchain
>Synopsis: devel/glib2 fails to build under current/amd64 due to ld bug
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: toolchain-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Feb 28 20:05:00 +0000 2006
>Originator: martijnb@atlas.ipv6.stack.nl
>Release: NetBSD 3.99.15
>Organization:
>Environment:
System: NetBSD atlas.ipv6.stack.nl 3.99.15 NetBSD 3.99.15 (ATLAS) #1: Thu Feb 16 16:05:50 CET 2006 martijnb@atlas.ipv6.stack.nl:/usr/obj/sys/arch/amd64/compile/ATLAS amd64
Architecture: x86_64
Machine: amd64
>Description:
devel/glib2 no longer compiles on AMD64/current. This problem didn't exist
prior to the beginning of February -at which point various parts of the
toolchain got updated-. The previous version of glib2 in pkgsrc failed to
compile with exactly the same error, and hadn't been touched in a while. This
is the reason I made it a toolchain/ bug, not a pkg/ bug.
The build fails with an error from ld:
cc -shared .libs/garray.o .libs/gasyncqueue.o .libs/gatomic.o .libs/gbacktrace.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/gslice.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/export/pkgsrc/devel/glib2/work/.buildlink/lib -lintl -Wl,-R/usr/pk
g/lib -Wl,-soname -Wl,libglib-2.0.so.0 -Wl,-retain-symbols-file -Wl,.libs/libglib-2.0.exp -o .libs/libglib-2.0.so.0.1000.0
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, gconvert.o *has* been compiled with -fPIC.
( full build log available on http://www.stack.nl/~martijnb/glib2-log )
Other packages (including www/firefox, when a binary glib2 package has been
used to satisfy dependencies) exhibit this problem as well.
>How-To-Repeat:
Try to build devel/glib2 on an AMD64 machine running -current.
>Fix:
Unknown
>Unformatted: