[MPlayer-users] Compile of version 35007 of mplayer fails due to ffmpeg error

The Wanderer wanderer at fastmail.fm
Thu Jun 28 15:57:40 CEST 2012

On 06/28/2012 09:35 AM, stan wrote:

> I run a subversion update to get the latest version of mplayer, 35007.
> Then make clean, make distclean, configure.  It runs along fine until
> the following error.
> cc -MD -MP -Wundef -Wall -Wno-switch -Wno-parentheses -Wpointer-arith -Wredundant-decls -Wstrict-prototypes -Wmissing-prototypes -Wdisabled-optimization -Wno-pointer-sign -Wdeclaration-after-statement -std=gnu99 -Werror-implicit-function-declaration -O4 -march=native -mtune=native -pipe -ffast-math -fomit-frame-pointer -fno-tree-vectorize -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -Ilibdvdread4 -I. -Iffmpeg  -D_REENTRANT -I/usr/include/directfb -I/usr/include/   -pthread -I/usr/include/kde/artsc -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include   -D_REENTRANT   -I/usr/include/freetype2 -I/usr/include/bs2b   -DHAVE_STRUCT_SOCKADDR_STORAGE   -I/usr/include/dirac   -I/usr/include/schroedinger-1.0 -I/usr/include/orc-0.4   -c -o libmpcodecs/vf_fspp.o libmpcodecs/vf_fspp.c
> In file included from ffmpeg/libavutil/internal.h:182:0,
>                  from libmpcodecs/vf_fspp.c:51:
> ffmpeg/libavutil/libm.h:53:6: warning: "HAVE_ISINF" is not defined [-Wundef]
> ffmpeg/libavutil/libm.h:63:6: warning: "HAVE_ISNAN" is not defined [-Wundef]
> In file included from ffmpeg/libavutil/internal.h:182:0,
>                  from libmpcodecs/vf_fspp.c:51:
> ffmpeg/libavutil/libm.h:54:74: error: expected identifier or '(' before 'sizeof'
> ffmpeg/libavutil/libm.h:64:74: error: expected identifier or '(' before 'sizeof'
> make: *** [libmpcodecs/vf_fspp.o] Error 1
> This is on Fedora 17 x86_64.

The offending commit is FFmpeg revision
46df708b45b34191973ef5181b052ce8e583bb4e, "Provide fallback definitions for
isnan() and isinf()".

In other words, by trying to be robust against systems which don't provide one
or the other, they broke building (without configure updates, which are in the
same commit) on systems that don't define HAVE_ISNAN and HAVE_ISINF. This
probably doesn't affect much other than MPlayer.

I can confirm that if you *do* have those two functions, simply configuring with
'--extra-cflags=-DHAVE_ISNAN -DHAVE-ISINF" works fine.

The attached quick-and-maybe-dirty patch seems to fix the problem for me.

       The Wanderer

Warning: Simply because I argue an issue does not mean I agree with any
side of it.

Every time you let somebody set a limit they start moving it.
   - LiveJournal user antonia_tiger
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fixbuild-isnan-isinf.diff
Type: text/x-diff
Size: 622 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-users/attachments/20120628/f129a7d5/attachment.bin>

More information about the MPlayer-users mailing list