[rrd-users] compile problem with IEEE math on Freescale P2020

Trevor Bowen trevorbowen at gmail.com
Thu May 2 16:25:51 CEST 2013


This may be more of a question for developers and Tobi, but would it be 
possible to either bundle or include the option to use SoftFloat as an 
alternative to the missing IEEE 754 floating-point library?

Please see:

     * http://www.jhauser.us/arithmetic/SoftFloat.html
     * 
http://stackoverflow.com/questions/2186788/is-there-an-open-source-c-c-implementation-of-ieee-754-operations

Currently, I'm trying to patch RRDtool to use SoftFloat on my embedded 
board, which apparently is missing an IEEE-754 library, but I'm sure others 
more familiar with RRDtool could do so with greater ease and "correctness".

Thanks!

Trevor


On 04/30/2013 02:56 PM, Trevor Bowen wrote:
> Hi,
>
> Has anyone discovered how to cross-compile RRDtool for Freescale's P2020 
> using their LTIB toolchain?  I am getting the familiar missing IEEE 
> floating-point math error:
>
>     IEEE Math Checks
>     checking for fpclassify... no
>     checking for fpclassify with <math.h>... yes
>     checking for isinf... yes
>     checking whether isfinite is broken... no
>     checking if IEEE math works out of the box... no
>     checking if IEEE math works with the -ieee switch... no
>     checking if IEEE math works with the -qfloat=nofold switch... no
>     checking if IEEE math works with the -w -qflttrap=enable:zerodivide... no
>     checking if IEEE math works with the -mieee switch... no
>     checking if IEEE math works with the -q float=rndsngl switch... no
>     checking if IEEE math works with the -OPT:IEEE_NaN_inf=ON switch... no
>     checking if IEEE math works with the -OPT:IEEE_comparisons=ON 
> switch... no
>     checking if IEEE math works with fpsetmask(0)... no
>     checking if IEEE math works with signal(SIGFPE,SIG_IGN)... no
>     configure: error:
>     Your Compiler does not do propper IEEE math ... Please find out how to
>     make IEEE math work with your compiler and let me know (tobi at oetiker.ch).
>     Check config.log to see what went wrong ...
>
> I am compiling it with the following (simplified) script:
>
>     export RFS=/local/cross-compiled/rootfs
>     export ARCH=powerpc
>     export OS=linux
>     export TOOLCHAIN_BASE=/opt/freescale
>     export 
> TOOLCHAIN_BIN=${TOOLCHAIN_BASE}/usr/local/gcc-4.3.74-eglibc-2.8.74-dp-2/powerpc-none-linux-gnuspe/bin
>     export CROSS_COMPILE=${TOOLCHAIN_BIN}/powerpc-none-linux-gnuspe-
>     export c=${CROSS_COMPILE}
>     export AS=${CROSS_COMPILE}as
>     export LD=${CROSS_COMPILE}ld
>     export CC=${CROSS_COMPILE}gcc
>     export AR=${CROSS_COMPILE}ar
>     export STRIP="${CROSS_COMPILE}strip --strip-unneeded"
>     export SSTRIP=${CROSS_COMPILE}sstrip
>     export OBJCOPY=${CROSS_COMPILE}objcopy
>     export OBJDUMP=${CROSS_COMPILE}objdump
>     export MAKE=make
>     export CFLAGS="-I${RFS}/usr/local/include -L${RFS}/lib"
>     export LDFLAGS="-I${RFS}/usr/local/include -L${RFS}/lib"
>     export PKG_CONFIG_LIBDIR="$( cd ${RFS}/usr/lib/pkgconfig && pwd )"
>     ./configure --host=ppc-linux --build=i586-linux-gnu --prefix=/usr/local
>
> Any suggestions?
>
> Thanks!
>
> Trevor



More information about the rrd-users mailing list