Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Mon, 8 Apr 2013 16:09:21 -0400
From: Rich Felker <dalias@...ifal.cx>
To: musl@...ts.openwall.com
Subject: Re: vfprintf.c:(.text+0xc6c): undefined reference to
 `__signbitl'

On Mon, Apr 08, 2013 at 09:39:19PM +0200, meres5@...ha.tmit.bme.hu wrote:
> Hi out there,
> 
> I build the latest musl under
> 
> meres5@...ha:~/tmp$ uname -a
> Linux alpha 2.6.32-5-powerpc64 #1 SMP Mon Oct 3 07:59:38 UTC 2011 ppc64
> GNU/Linux

On powerpc, musl uses the old long-double ABI where long double is the
same as double. It sounds like your gcc was built for 128-bit long
double, which is completely soft-float. For some reason the GCC and
glibc folks decided this would be a smart thing to do, despite the
fact that it's very slow and forces you to link a lot of soft-float
bloat into every single program (I guess they don't care because they
only do dynamic linking...?).

Anyway, there may be a way to override this on the gcc command line,
but the best solution would be to rebuild your gcc toolchain to use
64-bit long-double (same as double).

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.