Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 532598

Summary: media-video/mplayer-1.2_pre20130729 with media-video/ffmpeg-2.5 - libmpdemux/ebml.c:31:42: fatal error: libavutil/intfloat_readwrite.h: No such file or directory
Product: Gentoo Linux Reporter: Nick Andrade <SDNick484>
Component: Current packagesAssignee: Gentoo Linux bug wranglers <bug-wranglers>
Status: RESOLVED DUPLICATE    
Severity: normal CC: SDNick484
Priority: Normal Keywords: PATCH
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: Updates ebml.c with current functions

Description Nick Andrade 2014-12-14 23:26:13 UTC
FFMPEG 2.5 seems to have finally retired the deprecated libavutil/intfloat_readwrite.h functions.  These functions are called in ebml.c which is included with mplayer.  In particular, ebml.c calls av_int2flt & av_int2dbl which have been replaced with av_int2float & av_int2double, respectively.  

I have created a patch which updates the include to use libavutil/intfloat.h & libavutil/intreadwrite.h in place of libavutil/intfloat_readwrite.h, and likewise replace the old calls with the new ones.  After applying the patch, mplayer builds cleanly.

Reproducible: Always

Steps to Reproduce:
1. emerge ffmpeg-2.5
2. emerge mplayer-1.2_pre20130729
Actual Results:  
mplayer fails to build:
x86_64-pc-linux-gnu-gcc -MMD -MP -Wundef  -Wstrict-prototypes -Wmissing-prototypes -Wdisabled-optimization -Wno-pointer-sign -Wdeclaration-after-statement -std=gnu99  -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -D_ISOC99_SOURCE -I. -Iffmpeg -O2 -march=native -pipe -fno-tree-vectorize -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE  -fpie -DPIC -D_REENTRANT  -D_REENTRANT   -I/usr/include/freetype2 -c -o libmpdemux/extension.o libmpdemux/extension.c
libmpdemux/ebml.c:31:42: fatal error: libavutil/intfloat_readwrite.h: No such file or directory
 #include "libavutil/intfloat_readwrite.h"
                                          ^
compilation terminated.
Makefile:758: recipe for target 'libmpdemux/ebml.o' failed
make: *** [libmpdemux/ebml.o] Error 1
make: *** Waiting for unfinished jobs....


Expected Results:  
mplayer builds successfully.

I assume this will impact previous versions of mplayer, but I did not back test it or my patch.
Comment 1 Nick Andrade 2014-12-14 23:27:16 UTC
Created attachment 391746 [details, diff]
Updates ebml.c with current functions
Comment 2 Nick Andrade 2014-12-14 23:29:37 UTC
So right after I tested my patch I noticed mplayer-1.2_pre20141011.ebuild exists and is masked.  I went ahead, unmasked mplayer-1.2_pre20141011 and it builds fine with ffmpeg 2.5.  Looking at ebml.c, it seems it already has the same logic the patch I just submitted has.  

So perhaps instead of including the ebml patch, we can instead update the ffmpeg 2.5 mask warning to indicate mplayer-1.2_pre20141011 or later is necessary.
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2014-12-15 13:25:58 UTC

*** This bug has been marked as a duplicate of bug 532562 ***