Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 392541 - media-tv/xbmc-10.1 uses old MAX_STREAMS logic which fails with newer ffmpeg-0.8.7
Summary: media-tv/xbmc-10.1 uses old MAX_STREAMS logic which fails with newer ffmpeg-0...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal with 1 vote (vote)
Assignee: Gentoo Xbox project
URL:
Whiteboard:
Keywords:
: 398523 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-11-30 03:19 UTC by Federico Cuello
Modified: 2012-02-26 23:40 UTC (History)
16 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
xbmc-10.1 build log (build.log,450.77 KB, text/plain)
2011-12-14 23:24 UTC, Jessica Leigh
Details
ebuild patch for xbmc-10.1.ebuild (xbmc.ffmpeg.build.patch,761 bytes, text/plain)
2012-01-20 15:04 UTC, James Broadhead
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Federico Cuello 2011-11-30 03:19:18 UTC
./Codecs/DllAvFormat.h:173:88: warning: 'int av_set_parameters(AVFormatContext*, AVFormatParameters*)' is deprecated (declared at /usr/include/libavformat/avformat.h:1434)
./Codecs/DllAvFormat.h:173:111: warning: 'int av_set_parameters(AVFormatContext*, AVFormatParameters*)' is deprecated (declared at /usr/include/libavformat/avformat.h:1434)
./Codecs/DllAvFormat.h: In member function 'virtual ByteIOContext* DllAvFormat::av_alloc_put_byte(unsigned char*, int, int, void*, int (*)(void*, uint8_t*, int), int (*)(void*, uint8_t*, int), offset_t (*)(void*, offset_t, int))':
./Codecs/DllAvFormat.h:177:116: warning: 'AVIOContext* av_alloc_put_byte(unsigned char*, int, int, void*, int (*)(void*, uint8_t*, int), int (*)(void*, uint8_t*, int), int64_t (*)(void*, int64_t, int))' is deprecated (declared at /usr/include/libavformat/avio.h:228)
./Codecs/DllAvFormat.h:177:206: warning: 'AVIOContext* av_alloc_put_byte(unsigned char*, int, int, void*, int (*)(void*, uint8_t*, int), int (*)(void*, uint8_t*, int), int64_t (*)(void*, int64_t, int))' is deprecated (declared at /usr/include/libavformat/avio.h:228)
./Codecs/DllAvFormat.h: In member function 'virtual int DllAvFormat::av_write_header(AVFormatContext*)':
./Codecs/DllAvFormat.h:178:63: warning: 'int av_write_header(AVFormatContext*)' is deprecated (declared at /usr/include/libavformat/avformat.h:1492)
./Codecs/DllAvFormat.h:178:81: warning: 'int av_write_header(AVFormatContext*)' is deprecated (declared at /usr/include/libavformat/avformat.h:1492)
./Codecs/DllAvFormat.h: In member function 'virtual int DllAvFormat::av_metadata_set2(AVMetadata**, const char*, const char*, int)':
./Codecs/DllAvFormat.h:184:107: warning: 'int av_metadata_set2(AVDictionary**, const char*, const char*, int)' is deprecated (declared at /usr/include/libavformat/avformat.h:157)
./Codecs/DllAvFormat.h:184:145: warning: 'int av_metadata_set2(AVDictionary**, const char*, const char*, int)' is deprecated (declared at /usr/include/libavformat/avformat.h:157)
In file included from DVDPlayer.cpp:34:0:
DVDDemuxers/DVDDemuxFFmpeg.h: At global scope:
DVDDemuxers/DVDDemuxFFmpeg.h:127:27: error: 'MAX_STREAMS' was not declared in this scope
DVDDemuxers/DVDDemuxFFmpeg.h:129:18: warning: 'ByteIOContext' is deprecated (declared at /usr/include/libavformat/avio.h:218)
make[1]: *** [DVDPlayer.o] Error 1
make[1]: Leaving directory `/var/tmp/portage/media-tv/xbmc-10.1/work/xbmc-10.1/xbmc/cores/dvdplayer'
make: *** [xbmc/cores/dvdplayer/DVDPlayer.a] Error 2
emake failed
 * ERROR: media-tv/xbmc-10.1 failed (compile phase):
 *   emake failed


Reproducible: Always
Comment 1 Martin von Gagern 2011-11-30 07:30:31 UTC
Probably due to this commit:
http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=761ad4296806374118825529
Comment 2 Guillaume BINET 2011-12-03 09:51:12 UTC
It took me a really long trial and error on a poor atom to figure out this one : I tried against media-video/libav 0.6.2 0.7.2 0.8_pre20110818 0.8_pre20111116 with no success but this ebuild should depend straight on =media-video/ffmpeg
-0.7.8 and not virtual/ffmpeg !

The interim solution I found until the ebuild is fixed was to mask media-video/libav so the virtual takes the other one.
Comment 3 Jean-Francis Roy 2011-12-05 16:28:21 UTC
I confirm the failure with ffmpeg-0.8.7, and that using =media-video/ffmpeg
-0.7.8 makes xbmc compile again.
Comment 4 Martin von Gagern 2011-12-08 08:22:55 UTC
https://github.com/xbmc/xbmc/commit/75eaacf3caac128d8197c78485ced86241022c01 appears to be part of the solution, but backporting that alone isn't enough.
Comment 5 Adam Coyne 2011-12-13 21:21:23 UTC
I am getting this exact error as well. Masking >media-video/ffmpeg-0.7.8 and downgrading from ffmpeg-0.8.7 to 0.7.8 allows xbmc to build again.
Comment 6 Agostino Sarubbo gentoo-dev 2011-12-14 22:39:18 UTC
Adam, not cc arches on your own
Comment 7 Jessica Leigh 2011-12-14 23:24:42 UTC
Created attachment 295869 [details]
xbmc-10.1 build log
Comment 8 Jessica Leigh 2011-12-14 23:25:18 UTC
Is anyone working on this? This seems like a pretty big problem.

I've attached my build log, because there are actually some errors that appear earlier on in it, concerning various undeclared things in dvdplayer/Codecs/DllAvCodec.h

emerge --info output:

Portage 2.1.10.11 (default/linux/amd64/10.0, gcc-4.5.3, glibc-2.13-r4, 3.0.6-gentoo x86_64)
=================================================================
System uname: Linux-3.0.6-gentoo-x86_64-Intel-R-_Core-TM-2_Duo_CPU_P8800_@_2.66GHz-with-gentoo-2.0.3
Timestamp of tree: Sat, 10 Dec 2011 12:15:01 +0000
distcc 3.1 x86_64-pc-linux-gnu [enabled]
app-shells/bash:          4.1_p9
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.2-r3, 3.1.4-r3
dev-util/cmake:           2.8.4-r1
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.0.3
sys-apps/openrc:          0.9.4
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:       2.21.1-r1
sys-devel/gcc:            4.5.3-r1
sys-devel/gcc-config:     1.4.1-r1
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r1
sys-kernel/linux-headers: 3.1 (virtual/os-headers)
sys-libs/glibc:           2.13-r4
Repositories: gentoo sunrise java-overlay x-bpp-overlay kde-sunset x-myebuilds
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0 /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distcc distlocks ebuild-locks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="http://ftp.swin.edu.au/gentoo ftp://ftp.swin.edu.au/gentoo ftp://ftp.citylink.co.nz/gentoo"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en en_GB fr"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/sunrise /var/lib/layman/java-overlay /var/lib/layman/bpp-overlay /var/lib/layman/kde-sunset /var/lib/myebuilds"
SYNC="rsync://rsync.au.gentoo.org/gentoo-portage"
USE="X accessibility acl acpi alsa amd64 arts berkdb bitmap-fonts blas bzip2 cairo cblas cdr cli consolekit cracklib crypt cups cxx dbus dhcp dlloader dri dvd dvdr dvdread eds emboss encode esd evdev fam fftw firefox flac fortran gcj gdbm gif gnome gpm gstreamer gtk gtk2 hal iconv ipv6 isdnlog jpeg kde lapack ldap libg++ libwww live lm_sensors mad mikmod mmx modules mp3 mpeg mtp mudflap multilib mysql ncurses nls nptl nptlonly nsplugin ogg opengl openmp oss pam pcre pdf perl png ppds pppd python qt3 qt3support qt4 quicktime radio readline reflection sdl semantic-desktop server session spell spl sse sse2 ssl svg sysfs tcpd tiff truetype truetype-fonts type1-fonts udev unicode vorbis xinerama xml xorg xulrunner xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_GB fr" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="radeon" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 9 Beetle B. 2011-12-25 23:03:38 UTC
Same problem here...
Comment 10 Michael Behrns-Miller 2012-01-06 20:11:53 UTC
I'm also hitting this same problem.  What can we do to change the status to confirmed?
Comment 11 SpanKY gentoo-dev 2012-01-13 00:10:54 UTC
*** Bug 398523 has been marked as a duplicate of this bug. ***
Comment 12 James Broadhead 2012-01-20 15:04:17 UTC
Created attachment 299393 [details]
ebuild patch for xbmc-10.1.ebuild

Ebuild patch. 

- Replaces virtual/ffmpeg with media-video/ffmpeg (as libav seems not to work)
- DEP on media-video/ffmpeg-0.7*
- Remove old <net-fs/samba-3.3 line

@OP please mark in the bug report. 
@SpanKY: Could you merge this soon-ish?
Comment 13 SpanKY gentoo-dev 2012-01-24 00:03:55 UTC
once upstream xbmc fixes their code to not rely on MAX_STREAMS, we can add that patch to the tree
Comment 14 SpanKY gentoo-dev 2012-02-26 23:40:11 UTC
xbmc-11 seems to build fine with media-video/ffmpeg-0.10