Date: Thu, 14 Jun 2012 15:34:32 +0300 From: Konstantin Belousov <kostikbel@gmail.com> To: Tim Kientzle <tim@kientzle.com> Cc: freebsd-arm@freebsd.org, Jan Sieka <jps@semihalf.com>, freebsd-current@freebsd.org Subject: Re: Possible fix for Perl failing with ../lib/auto/POSIX/POSIX.so: Undefined symbol "__flt_rounds" on ARM Message-ID: <20120614123432.GB2337@deviant.kiev.zoral.com.ua> In-Reply-To: <E7AE0433-06F3-4024-B05B-87EA494856D2@kientzle.com> References: <4FCE211D.10204@semihalf.com> <0FE5C5BF-FADE-49BA-BF38-00018A752F14@kientzle.com> <4FD6FB72.10900@semihalf.com> <20120612084917.GL2337@deviant.kiev.zoral.com.ua> <E7AE0433-06F3-4024-B05B-87EA494856D2@kientzle.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--zUOaI4FcYSvHUUu9 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Jun 13, 2012 at 08:32:19PM -0700, Tim Kientzle wrote: > On Jun 12, 2012, at 1:49 AM, Konstantin Belousov wrote: > >>>=20 > >>> On Jun 5, 2012, at 8:09 AM, Jan Sieka wrote: > >>>>=20 > >>>>=20 > >>>> After investigating the issue it appeared that __flt_rounds symbol is > >>>> not exported by libc. Applying the following patch, recompilling wor= ld > >>>> and Perl fixed the problem and allowed to use Perl on SheevaPlug: > >>>>=20 > >>>> 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; >=20 >=20 > > If the symbols are used by normal programs, that I think > > we should indeed guarantee ABI stability for them, and FBSD_1.3 > > namespace is the right namespace to use. >=20 > Why 1.3? >=20 > This is a common function across every architecture except MIPS right > now (and that's probably easily remedied), so why would it be in > a different section for different architectures? The libc.so built as a result is architecture-specific, so it shall follow the ABI and ABI history of that architecture. By the project policy, a symbol added during the lifetime of CURRENT-10, goes into FBSD_1.3 version namespace. What other arches do there is irrelevant. --zUOaI4FcYSvHUUu9 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (FreeBSD) iEYEARECAAYFAk/Z2lcACgkQC3+MBN1Mb4j1wQCgui/jL5mTE5ZMIZNY669NHaHg YcMAoLBSxh8hPyn2TcF7GKvuWi9nt9SA =iVWx -----END PGP SIGNATURE----- --zUOaI4FcYSvHUUu9--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120614123432.GB2337>