Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 330201 - media-tv/xbmc should check for -ldca instead of -ldts
Summary: media-tv/xbmc should check for -ldca instead of -ldts
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal with 1 vote (vote)
Assignee: Gentoo Xbox project
URL: http://trac.xbmc.org/ticket/8040
Whiteboard:
Keywords:
: 333863 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-07-28 12:55 UTC by Füves Zoltán
Modified: 2010-09-18 16:06 UTC (History)
8 users (show)

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


Attachments
xbmc/config.log (config.log,67.29 KB, text/plain)
2010-07-28 18:06 UTC, Füves Zoltán
Details
xbmc-9999 libdca and livdvdnav patch (xbmc-9999.patch,685 bytes, patch)
2010-08-04 00:42 UTC, BT
Details | Diff
xbmc-9999 libdca patch (xbmc-9999.patch,369 bytes, patch)
2010-08-05 00:30 UTC, BT
Details | Diff
xbmc-9999 ebuild from local overlay for comparison (xbmc-9999.ebuild,5.21 KB, text/plain)
2010-08-22 21:03 UTC, hal
Details
use system libdca, instead of system libdts (use_system_libdca_instead_of_deprecated_system_libdts.patch,8.54 KB, patch)
2010-09-16 00:13 UTC, Samuli Suominen (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Füves Zoltán 2010-07-28 12:55:22 UTC
I use this version of ffmpeg media-video/ffmpeg-0.5_p20373. And xbmc dont want to start becasue this reason:
/usr/share/xbmc/xbmc.bin: error while loading shared libraries: libavutil.so.49: cannot open shared object file: No such file or directory

then I create a symlink on an actual libavutil xbmc start 

but re/emerge doesnt work

and say this:

hecking libpostproc/postprocess.h usability... yes
checking libpostproc/postprocess.h presence... yes
checking for libpostproc/postprocess.h... yes
checking libswscale/swscale.h usability... yes
checking libswscale/swscale.h presence... yes
checking for libswscale/swscale.h... yes
checking libswscale/rgb2rgb.h usability... no
checking libswscale/rgb2rgb.h presence... no
checking for libswscale/rgb2rgb.h... no
checking ffmpeg/rgb2rgb.h usability... no
checking ffmpeg/rgb2rgb.h presence... no
checking for ffmpeg/rgb2rgb.h... no
configure: == Use of external ffmpeg enabled. ==
checking for ff_vdpau_vc1_decode_picture in -lavcodec... no
== External ffmpeg doesn't support VDPAU. VDPAU support disabled. ==
checking for main in -la52... yes
configure: == Use of external liba52 enabled. ==
checking for main in -ldts... no
configure: error: Could not find a required library. Please see the README for your platform.

!!! Please attach the following file when seeking support:
!!! /var/tmp/portage/media-tv/xbmc-9.11-r4/work/xbmc-9.11/config.log
 * ERROR: media-tv/xbmc-9.11-r4 failed:
 *   econf failed
 * 
 * Call stack:
 *     ebuild.sh, line   54:  Called src_configure
 *   environment, line 5444:  Called econf '--disable-ccache' '--disable-optimizations' '--enable-external-libraries' '--enable-goom' '--enable-gl' '--disable-avahi' '--disable-dvdcss' '--disable-debug' '--disable-faac' '--disable-joystick' '--disable-mid' '--disable-profiling' '--disable-pulse' '--enable-vdpau' '--enable-xrandr'
 *     ebuild.sh, line  544:  Called die
 * The specific snippet of code:
 *                      die "econf failed"
 * 
 * If you need support, post the output of 'emerge --info =media-tv/xbmc-9.11-r4',
 * the complete build log and the output of 'emerge -pqv =media-tv/xbmc-9.11-r4'.
 * The complete build log is located at '/var/tmp/portage/media-tv/xbmc-9.11-r4/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-tv/xbmc-9.11-r4/temp/environment'.
 * S: '/var/tmp/portage/media-tv/xbmc-9.11-r4/work/xbmc-9.11'

thanks your time







Reproducible: Always

Steps to Reproduce:
Reproduce always



Portage 2.1.8.3 (default/linux/x86/10.0, gcc-4.3.4, glibc-2.11.2-r0, 2.6.34-gentoo-r1 i686)
=================================================================
                        System Settings
=================================================================
System uname: Linux-2.6.34-gentoo-r1-i686-Intel-R-_Celeron-R-_CPU_2.40GHz-with-gentoo-1.12.13
Timestamp of tree: Tue, 27 Jul 2010 17:45:01 +0000
ccache version 2.4 [enabled]
app-shells/bash:     4.0_p37
dev-lang/python:     2.4.6, 2.6.5-r2, 3.1.2-r3
dev-util/ccache:     2.4-r7
dev-util/cmake:      2.6.4-r3
sys-apps/baselayout: 1.12.13
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.13, 2.65
sys-devel/automake:  1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.3.4, 4.4.3-r2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6b
virtual/os-headers:  2.6.30-r1
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="*"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=i686 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests ccache distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://gentoo.inf.elte.hu/ http://gentoo.inode.at/  ftp://gentoo.inf.elte.hu/"
LANG="hu_HU.UTF8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="hu us"
MAKEOPTS="-j2"
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="/usr/local/portage/layman/last-hope"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X acl acpi alsa berkdb bzip2 cli cracklib crypt cups cxx dbus dri dvd dvdr fortran fxsr gdbm gif gpm hal iconv jpeg jpeg2k mmx modules mudflap ncurses nls nptl nptlonly opengl openmp pam pcre pdf perl png pppd python qt3support qt4 readline reflection session spl ss sse sse2 ssl sysfs syslog tcpd tiff truetype unicode wifi win32codecs x86 xorg xscreensaver zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 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" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="hu us" 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, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

media-tv/xbmc-9.11-r4 was built with the following:
USE="alsa sse sse2 -aac (-altivec) -avahi -css -debug -joystick -midi -profile -pulseaudio -vdpau -xrandr" 
CXXFLAGS="-O2 -march=i686 -pipe -fomit-frame-pointer -D__STDC_CONSTANT_MACROS"
LDFLAGS="-Wl,-O1"
Comment 1 Chí-Thanh Christopher Nguyễn gentoo-dev 2010-07-28 16:50:51 UTC
(In reply to comment #0)
> !!! Please attach the following file when seeking support:
> !!! /var/tmp/portage/media-tv/xbmc-9.11-r4/work/xbmc-9.11/config.log

Don't create symlinks. Use revdep-rebuild instead. If the configure error persists after revdep-rebuild, attach config.log.
Comment 2 Samuli Suominen (RETIRED) gentoo-dev 2010-07-28 16:59:24 UTC
libdts.a was a symlink to libdca.a (and still is, with USE="static-libs") which means there was a problem with how xbmc is using libdca (through old compability symlink) even before... causing it to always statically link libdca in.

libdts was -ldts up until version 0.0.2
then with 0.0.5 the library was renamed to libdca and -ldca

xbmc should check for -ldca and link to it, instead of -ldts
Comment 3 Füves Zoltán 2010-07-28 18:06:18 UTC
Created attachment 240489 [details]
xbmc/config.log



(In reply to comment #1)
> (In reply to comment #0)
> > !!! Please attach the following file when seeking support:
> > !!! /var/tmp/portage/media-tv/xbmc-9.11-r4/work/xbmc-9.11/config.log
> 
> Don't create symlinks. Use revdep-rebuild instead. If the configure error
> persists after revdep-rebuild, attach config.log.
> 

OK sure the symlink was only temporary solution for testing, but the revdep-rebuild did not find any problem, and it could not solve  the issue

thanks your time
Comment 4 Füves Zoltán 2010-07-28 18:10:21 UTC
(In reply to comment #2)

> xbmc should check for -ldca and link to it, instead of -ldts

Yes, in this case that would be better

thanks for your time
Comment 5 KillerC 2010-07-30 09:43:44 UTC
Just to add i have this exact same problem and did no symlinking at all. Running revdep-rebuild showed up nothing either. There is also at least one other person having this same problem.

http://forums.gentoo.org/viewtopic-p-6369564.html#6369564



Comment 6 KillerC 2010-07-31 21:10:26 UTC
(In reply to comment #5)
> Just to add i have this exact same problem and did no symlinking at all.
> Running revdep-rebuild showed up nothing either. There is also at least one
> other person having this same problem.
> 
> http://forums.gentoo.org/viewtopic-p-6369564.html#6369564
> 

To quote a Dev from that thread:

xbmc's configure.in has:

AC_CHECK_LIB([dts], [main],, AC_MSG_ERROR($missing_library))

it should be:

AC_CHECK_LIB([dca], [main],, AC_MSG_ERROR($missing_library))
Comment 7 Kobboi 2010-08-03 16:49:39 UTC
Running into the same issue :(
Comment 8 BT 2010-08-04 00:42:01 UTC
Created attachment 241357 [details, diff]
xbmc-9999 libdca and livdvdnav patch

I was able to get xbmc-9999 to build with this patch. configure.in will now look for dca instead of dts.

It also "fixes" bug #330473, 'missing configure.in or configure.ac', which is the result of 'xbmc/cores/dvdplayer/Codecs/libbdnav' being removed in favor of libbluray.
Comment 9 BT 2010-08-04 03:02:21 UTC
I also want to mention that this patch just does enough to allow XBMC to build and nothing else. I don't know if it does anything to fix the underlying cause of the issue.
Comment 10 KillerC 2010-08-04 13:56:14 UTC
Compiles fine if you:

ebuild /usr/portage/media-tv/xbmc/xbmc-9.11-r4.ebuild unpack

Edit /var/tmp/portage/media-tv/xbmc/../configure.in

changing 

AC_CHECK_LIB([dts], [main],, AC_MSG_ERROR($missing_library))

to

AC_CHECK_LIB([dca], [main],, AC_MSG_ERROR($missing_library))

and then
ebuild /usr/portage/media-tv/xbmc/xbmc-9.11-r4.ebuild merge

The 'xbmc/cores/dvdplayer/Codecs/libbdnav' does not appear to be an issue with this version as using the above method it compiles fine.
Comment 11 BT 2010-08-05 00:30:29 UTC
Created attachment 241449 [details, diff]
xbmc-9999 libdca patch

Dropped the libdvdnav fix from the patch since it only applies to xbmc-9999. A patch for the libdvdnav issue can be found in bug #330473.
Comment 12 Craig Andrews gentoo-dev 2010-08-05 19:58:39 UTC
I believe this is the upstream bug: http://trac.xbmc.org/ticket/8040
Comment 13 Alexey Charkov 2010-08-06 15:30:21 UTC
I confirm that changing [dts] to [dca] in configure.in allows to build xbmc-9.11-r4. Could that fix be added to the tree?

# ldd /usr/share/xbmc/xbmc.bin | grep dca
        libdca.so.0 => /usr/lib/libdca.so.0 (0x00007f721e525000)
Comment 14 KillerC 2010-08-06 18:09:24 UTC
(In reply to comment #12)
> I believe this is the upstream bug: http://trac.xbmc.org/ticket/8040
> 

I would agree with you however this error only started on the 24th or 25th of July, i had built XBMC only days earlier and it compiled flawlessly. I can only assume that another package finally got updated and moved libdts to libdca and XBMC has not yet caught up.

The http://trac.xbmc.org/ticket/8040 bugreport is 8 months old and as stated the patch in that report no longer works anyway.

My system is running fine now but this is a showstopper for anyone trying to start from fresh without already knowing about this bug report.
Comment 15 Samuli Suominen (RETIRED) gentoo-dev 2010-08-21 20:51:03 UTC
*** Bug 333863 has been marked as a duplicate of this bug. ***
Comment 16 hal 2010-08-22 21:00:48 UTC
first of all i'm of the opinion we have to distinguish between the xbmc-9.11-r* and xbmx-9999 ebuild. a lot has been happened upstream since the 9.11 release. but this bug contains people talking about the svn release while others refer to the 9.11 release. this can't lead to any success. but i guess this bug refers to the 9.11 ebuild, at least that's what i can read in the op's crash logs.

however, finally i can't tell much about the 9.11 ebuild because i've been using the sources from trunk from the first day i emerged xbmc into my system. in some cases, like atm, i'm using a modified 9999 ebuild in my local overlay. this gives me no headache atm. maybe it gives you some hints. attachement in the next post.
Comment 17 hal 2010-08-22 21:03:55 UTC
Created attachment 244097 [details]
xbmc-9999 ebuild from local overlay for comparison
Comment 18 Domen Kožar 2010-08-23 09:34:28 UTC
Confirmed on x86 that comment #11 fixes the issue. Talking about 9.11, what other info do you need?
Comment 19 BT 2010-08-24 16:05:53 UTC
I would like to point out that I did get this error with xbmc-9999 and my patch was clearly marked as xbmc-9999. However sometime in the past couple of weeks, xbmc-9999 has been able to build without my patch. I still haven't tracked down the change that that fixed this, but I suspect it might be revision 1.60 of xbmc-9999.
Comment 20 SpanKY gentoo-dev 2010-08-26 02:35:15 UTC
this bug is about -ldca vs -ldts.  the upstream source hasnt changed.
Comment 21 André Terpstra 2010-09-05 12:24:15 UTC
ran into the same error.
Comment 22 Samuli Suominen (RETIRED) gentoo-dev 2010-09-15 21:32:12 UTC
libdca is providing dts.h for compability reasons, therefore the change in Comment #10 is enough to workaround this issue for now.

but be noted that with next libdca version, the dts.h will be gone as well and full migration is required. it's really only up to trivial renaming of functions around xbmc's source code. 

i have no idea why xbmc upstream has been sitting on this for months, perhaps I should just punt the dts.h from our package right now to get more attention to the issue. rest of the tree has been migrated months ago.
Comment 23 Samuli Suominen (RETIRED) gentoo-dev 2010-09-16 00:13:42 UTC
Created attachment 247531 [details, diff]
use system libdca, instead of system libdts

This still leave the bundled copy of obsolete libdts inside xbmc source tree, which is actually illegal to have as 'dts' trademark and companies have been sued in US for that.

Anyhow, I didn't test this, but it should work. It's against current git.
Comment 24 Samuli Suominen (RETIRED) gentoo-dev 2010-09-16 00:18:17 UTC
if it doesn't work, I propably missed some reference of "dts_" somewhere, should bail out on compile error inside USE_EXTERNAL_LIBDCA block, then just rename to "dca_"
Comment 25 SpanKY gentoo-dev 2010-09-18 16:05:56 UTC
xbmc-9.11-r5 builds against libdca now