[FFmpeg-user] ffmpeg4android and missing math functions

Carl Eugen Hoyos cehoyos at ag.or.at
Thu Oct 30 00:49:47 CET 2014

C E Macfarlane <c.e.macfarlane <at> macfh.co.uk> writes:

> ./configure --prefix=/opt/share --disable-mipsdspr1 
> --disable-mipsdspr2 --enable-cross-compile --arch=mipsel 
> --target-os=linux --cross-prefix=mipsel- 
> --cc=mipsel-gcc --cxx=mipsel-g++

(cxx should be unneded.)

> /home/Embedded/cross-compiler-mipsel/ffmpeg-2.4.2# make
> CC	libavdevice/alldevices.o
> In file included from ./libavutil/internal.h:168,
>                  from ./libavutil/common.h:415,
>                  from ./libavutil/avutil.h:289,
>                  from ./libavutil/log.h:25,
>                  from libavdevice/avdevice.h:46,
>                  from libavdevice/alldevices.c:22:
> ./libavutil/libm.h:88: error: static declaration of 'fminf' follows
> non-static declaration

Too bad the compiler doesn't tell us where the non-static 
declaration is...

> make: *** [libavdevice/alldevices.o] Error 1
> # grep HAVE_FMINF config.h
> #define HAVE_FMINF 0

It appears to me that fminf() is defined in one 
of your cross-compilation system headers - probably 
math.h - but not available in your C library.
Is that correct or do I miss something?

Or does the cross compiler use the wrong headers?
Or is a linker flag needed to tell the compiler 
where to find fminf()?

Your compiler is eight years old, I don't know 
if this is the problem but I don't think anybody 
can rule it out.

Carl Eugen

More information about the ffmpeg-user mailing list