Date: Tue, 05 Jun 2012 10:28:51 -0600 From: Ian Lepore <freebsd@damnhippie.dyndns.org> 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: <1338913731.36051.229.camel@revolution.hippie.lan> In-Reply-To: <4FCE211D.10204@semihalf.com> References: <4FCE211D.10204@semihalf.com>
index | next in thread | previous in thread | raw e-mail
On Tue, 2012-06-05 at 17:09 +0200, 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?
>
> Best regards,
>
> Jan Sieka
It looks correct to me, except that I don't know the conventions for
adding symbols and which version/section a symbol goes into. That is, I
don't know when you add a symbol to an existing _1.0 section versus when
you have to create a new version section.
-- Ian
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1338913731.36051.229.camel>
