Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 9 Jun 2012 09:11:30 -0700
From:      Tim Kientzle <tim@kientzle.com>
To:        Jan Sieka <jps@semihalf.com>
Cc:        freebsd-arm@freebsd.org
Subject:   Re: Possible fix for Perl failing with ../lib/auto/POSIX/POSIX.so: Undefined symbol "__flt_rounds" on ARM
Message-ID:  <0FE5C5BF-FADE-49BA-BF38-00018A752F14@kientzle.com>
In-Reply-To: <4FCE211D.10204@semihalf.com>
References:  <4FCE211D.10204@semihalf.com>

next in thread | previous in thread | raw e-mail | index | archive | help

On Jun 5, 2012, at 8:09 AM, Jan Sieka wrote:

> Hello Ian!
> 
> I tried recently to compile and run Perl 5.12 on ARM (SheevaPlug) using
> HEAD from 22.05.2012 and got the following error while trying to run:
> /usr/ports/lang/perl5.12 # make test
> [...]
> ../lib/auto/POSIX/POSIX.so: Undefined symbol "__flt_rounds
> [...]
> 
> After investigating the issue it appeared that __flt_rounds symbol is
> not exported by libc. Applying the following patch, recompilling world
> and Perl fixed the problem and allowed to use Perl on SheevaPlug:
> 
> diff --git a/lib/libc/arm/Symbol.map b/lib/libc/arm/Symbol.map
> index e8c7f1d..8cdcdaf 100644
> --- a/lib/libc/arm/Symbol.map
> +++ b/lib/libc/arm/Symbol.map
> @@ -70,6 +70,7 @@ FBSDprivate_1.0 {
>        __divdf3;
>        __floatsisf;
>        __floatsidf;
> +       __flt_rounds;
>        __fixsfsi;
>        __fixdfsi;
>        __fixunssfsi;
> 
> Can you comment whether this is a correct solution?

Great!  I had the same problem compiling Python last
week and had planned to track it down.

I just committed this to -CURRENT and will also
merge it to the armv6 tree.

Tim




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0FE5C5BF-FADE-49BA-BF38-00018A752F14>