Subject: Re: 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: Nick Hudson <nick.hudson@dsl.pipex.com>
List: netbsd-bugs
Date: 03/03/2006 15:55:02
The following reply was made to PR toolchain/32954; it has been noted by GNATS.

From: Nick Hudson <nick.hudson@dsl.pipex.com>
To: martijnb@atlas.ipv6.stack.nl
Cc: gnats-bugs@netbsd.org, toolchain-manager@netbsd.org,
	gnats-admin@netbsd.org, netbsd-bugs@netbsd.org
Subject: Re: toolchain/32954: devel/glib2 fails to build under current/amd64 due to ld bug
Date: Fri, 3 Mar 2006 15:52:49 +0000

 On Friday 03 March 2006 14:50, martijnb@atlas.ipv6.stack.nl wrote:
 > Klaus Klein wrote:
 > >  The problem here is apparently caused by gconvert.c declaring
 > >  _g_charset_get_aliases() with attribute(visibility("hidden")),
 > >  which doesn't match its definition (in a different source file).
 >
 > Well, the problem certainly ceases to be when I fix the declaration to
 > match the definition, but I'm not entirely sure I understand what the
 > intended purpose of using that attribute was, as it fails to make
 > sense to me the way it is right now.
 
 I the intent is to not expose _g_charset_get_aliases. Without fixing the 
 definition to match the declaration this doesn't work, i.e. before the
 fix
 
 $ uname -a
 NetBSD arthur 3.0_STABLE NetBSD 3.0_STABLE (ARTHUR) #3: Thu Feb  9 08:32:39 GMT 2006  nick@arthur:/usr/obj/i386/usr/src-3/sys/arch/i386/compile/ARTHUR i386
 $ nm -D /usr/pkg/lib/libglib-2.0.so.0 | grep _g_charset_get_aliases
 0003fcb0 T _g_charset_get_aliases
 
 > Furthermore, I don't quite grok why 
 > this only seems to affect amd64 - so I'm a bit relucant to file a PR under
 > pkg- for it with a fix. I'm afraid that I'd be breaking things somewhere
 > else..
 
 ld/bfd on amd64 is just more fussy about linking DSOs.
 
 Nick