Possible fix for Perl failing with ../lib/auto/POSIX/POSIX.so: Undefined symbol "__flt_rounds" on ARM

Ian Lepore freebsd at damnhippie.dyndns.org
Tue Jun 12 23:42:26 UTC 2012


On Tue, 2012-06-12 at 23:26 +0300, Konstantin Belousov wrote:
> On Tue, Jun 12, 2012 at 05:56:12PM +0200, Jan Sieka wrote:
> > Both versions work indeed. I have analysed other architectures' 
> > lib/libc/<arch>/Symbol.map files and __flt_rounds should go into FBSD_ and 
> > *not* into FBSDprivate section. I have verified that at least one of the 
> > Perl's libraries (POSIX.so) links to __flt_rounds. Python also links to 
> > this function. So to the best of my knowledge current patch is the 
> > righteous one.
> 
> Let me restate my point again. It does not matter whether some application
> uses the symbol. It does matter whether the symbol is considered the part
> of exported stable ABI, intended for use by applications. If it is, then
> FBSD_1.X is the right namespace, otherwise symbol should be moved to
> private and existing usage fixed.

The standard C macro FLT_ROUNDS from float.h expands to the reference to
__flt_rounds; it's intended for use by applications.

-- Ian




More information about the freebsd-arm mailing list