Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 90193 - MythTV 0.18 compile fails on XRANDR
Summary: MythTV 0.18 compile fails on XRANDR
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Television related Applications in Gentoo's Portage
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-04-23 21:39 UTC by David Brieck Jr.
Modified: 2005-05-15 23:15 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Brieck Jr. 2005-04-23 21:39:26 UTC
The compile of MythTV 0.18 will fail if xv does not support xrandr. Adding -xrandr to the USE flags does not correct the problem.

Reproducible: Always
Steps to Reproduce:
1. emerge mythtv

Actual Results:  
../../libs/libmyth/libmyth-0.18.so: undefined reference to `XRRSetScreenConfig'
../../libs/libmyth/libmyth-0.18.so: undefined reference to `XRRFreeScreenConfigInfo'
../../libs/libmyth/libmyth-0.18.so: undefined reference to `XRRConfigSizes'
../../libs/libmyth/libmyth-0.18.so: undefined reference to
`XRRConfigCurrentConfiguration'
../../libs/libmyth/libmyth-0.18.so: undefined reference to `XRRGetScreenInfo' 

Expected Results:  
Compile should complete successfully.

If I create a portage overlay with --disable-xrandr in the compile options the
ebuild will compile successfully. I do have xv support, just not xrandr. Build
should consider the use flag of xrandr.
Comment 1 Doug Goldstein (RETIRED) gentoo-dev 2005-05-11 04:22:39 UTC
as always... emerge info....
Comment 2 David Brieck Jr. 2005-05-11 05:22:28 UTC
My apologies, this is my first gentoo bug report.

root@mythtv myth # emerge info
Portage 2.0.51.19 (default-linux/x86/2005.0/2.4, gcc-3.2.3, glibc-2.3.2-r1, 2.4.20-xfs-r3 i686)
=================================================================
System uname: 2.4.20-xfs-r3 i686 AMD Athlon(tm) XP 2500+
Gentoo Base System version 1.4.3.8p1
Python:              dev-lang/python-2.2.3-r1 [2.2.3 (#1, Sep 13 2003, 05:34:42)]
distcc 2.11.1 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.3 [enabled]
dev-lang/python:     2.2.3-r1
sys-devel/autoconf:  2.59-r4
sys-devel/automake:  1.8.5-r1
sys-devel/binutils:  2.14.90.0.6-r2
sys-devel/libtool:   1.4.3-r1
virtual/os-headers:  2.4.19-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=athlon-xp"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.1/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control /var/www/localhost/htdocs//mythweb/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=athlon-xp"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig buildpkg ccache distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://mirror.tucdemonic.org/gentoo/ ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo ftp://csociety-ftp.ecn.purdue.edu/pub/gentoo/ rsync://csociety-ftp.ecn.purdue.edu/pub/gentoo/"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 3dnow X alsa apm arts avi berkdb bitmap-fonts bonobo cdr crypt cups dvd emboss encode esd fam flac foomaticdb fortran gdbm gif gnome gpm gstreamer gtk gtk2 imagemagick imlib ipv6 java jpeg kde libg++ libwww mad mikmod mmx motif mozilla mp3 mpeg mysql ncurses nls ogg oggvorbis opengl oss pam pdflib perl png postgres python qt quicktime readline samba sdl spell ssl svga tcpd tiff transcode truetype truetype-fonts type1-fonts vorbis xml xml2 xmms xv zlib"
Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Comment 3 Doug Goldstein (RETIRED) gentoo-dev 2005-05-14 11:02:53 UTC
I talked to our xorg-x11 guys. No idea how you did this without using the USE="minimal" when building xorg-x11. Which MythTV will not work with the minimal USE flag.

Please re-emerge your xorg-x11 without that. And try again.
Comment 4 Doug Goldstein (RETIRED) gentoo-dev 2005-05-14 11:11:58 UTC
I'll give you this one. But with no guarentee that it works.
Comment 5 Doug Goldstein (RETIRED) gentoo-dev 2005-05-14 11:12:43 UTC
I'll give you this one. But with no guarentee that it works.
Comment 6 Doug Goldstein (RETIRED) gentoo-dev 2005-05-14 12:27:17 UTC
I still dislike this fix because the configure script should detect XRANDR support.

provide me with

emerge -pv mythtv

then provide me with the screen of data that MythTV says it's enabled right when it starts to compile.
Comment 7 David Brieck Jr. 2005-05-14 12:45:42 UTC
mythtv root # emerge -pv mythtv

These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] media-tv/mythtv-0.18  +X +alsa (-altivec) +arts -cle266 -debug -directfb -dvb -ieee1394 -jack -joystick -lcd -lirc +nls -nvidia +oggvorbis +opengl +oss +xv 0 kB

AND

mythtv root # emerge -B mythtv
Calculating dependencies ...done!
>>> emerge (1 of 1) media-tv/mythtv-0.18 to /
>>> md5 files   ;-) mythtv-0.16.ebuild
>>> md5 files   ;-) ChangeLog
>>> md5 files   ;-) metadata.xml
>>> md5 files   ;-) mythtv-0.17-r1.ebuild
>>> md5 files   ;-) mythtv-0.18.ebuild
>>> md5 files   ;-) files/mythbackend.conf
>>> md5 files   ;-) files/mythbackend.rc6
>>> md5 files   ;-) files/mythfilldatabase.cron
>>> md5 files   ;-) files/digest-mythtv-0.17-r1
>>> md5 files   ;-) files/digest-mythtv-0.18
>>> md5 files   ;-) files/digest-mythtv-0.16
>>> md5 files   ;-) files/mythtv-0.17-qt334-dst-fix.patch
>>> md5 files   ;-) files/mythtv-0.16-cx88.patch
>>> md5 src_uri ;-) mythtv-0.18.tar.bz2
>>> Unpacking source...
true
>>> Unpacking mythtv-0.18.tar.bz2 to /var/tmp/portage/mythtv-0.18/work
>>> Source unpacked.
./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-mmx --disable-altivec --enable-audio-oss --enable-audio-alsa --enable-audio-arts --disable-audio-jack --disable-lirc --disable-joystick-menu --disable-xvmc-vld --disable-directfb --disable-dvb --disable-dvb-eit --dvb-path=/usr/include --enable-opengl-vsync --enable-vorbis --disable-xvmc --enable-xv --enable-x11
# Basic Settings
Compile type     release
Compiler cache   yes, using ccache symlinked gcc
DistCC           not using distcc explicitly, since ccache symlink is present
Install prefix   /usr
CPU              x86 (AMD Athlon(tm) XP 2500+)
Big Endian       no
MMX enabled      no
Vector Builtins  no

# Input Support
Joystick menu    no
lirc support     no
ivtv support     yes
FireWire support no
DVB support      no [/usr/include]

# Sound Output Support
OSS support      yes
ALSA support     yes
aRts support     yes
JACK support     no

# Video Output Support
x11 support      yes
xrandr support   yes
xv support       yes
XvMC support     no
XvMC VLD support no
OpenGL vsync     yes

Creating config.mak and config.h
Comment 8 Doug Goldstein (RETIRED) gentoo-dev 2005-05-14 12:55:23 UTC
Still at a complete loss how you managed to build xorg-x11 without minimal USE... Please give me a emerge -pv xorg-x11

Also try the 0.18-r1 ebuilds... not 0.18.. those are broken. But they probably won't make a difference in the XRandr issue... but they will fix other things.
Comment 9 David Brieck Jr. 2005-05-14 17:16:24 UTC
Here you go:
mythtv root # emerge -pv xorg-x11

These are the packages that I would merge, in order:

Calculating dependencies ...done!
[blocks B     ] <www-client/mozilla-1.7.3-r3 (is blocking media-libs/freetype-2.1.9-r1)
[blocks B     ] <x11-base/xorg-x11-6.8.0-r4 (is blocking x11-base/opengl-update-2.1.1-r1)
[ebuild     U ] media-libs/freetype-2.1.9-r1 [2.1.4] -bindist* -debug -doc +zlib 969 kB
[ebuild     U ] x11-base/opengl-update-2.1.1-r1 [1.7] 37 kB
[ebuild     U ] x11-misc/ttmkfdir-3.0.9-r2 [3.0.9] -debug 19 kB
[ebuild     U ] x11-base/xorg-x11-6.8.2-r1 [4.3.0-r2] -3dfx +3dnow* +bitmap-fonts* -cjk -debug -dlloader -dmx -doc -font-server -hardened -insecure-drivers +ipv6* -minimal +mmx +nls +opengl +pam -sdk -sse -static +truetype-fonts* +type1-fonts* (-uclibc) -xprint +xv 45,094 kB
[ebuild  N    ] app-arch/rpm2targz-9.0-r2  2 kB
[ebuild  N    ] sys-apps/utempter-0.5.5.5-r1  -debug 20 kB
[ebuild  N    ] x11-terms/xterm-200-r1  -Xaw3d -debug -toolbar +truetype -unicode 681 kB

Total size of downloads: 46,824 kB

I'm on older xfree86. I'm also running a 2.4 kernel as well. This machine just since under the TV at home so as long as it 'works' I haven't really seen the need to upgrade.

My desktop didn't have a problem with the ebuild and it was running xfree as well. I can't test anything for you on my desktop anymore though since I've recently brought that machine up to date because of some problems I was having with KDE 3.4.

Like I said before though, if I modify the ebuild according to this diff:

<       myconf="--disable-mmx --disable-xrandr
---
>       myconf="--disable-mmx

everything seems to compile just fine. It's been running since it was built the week it came out.

Thanks for your time.
Comment 10 David Brieck Jr. 2005-05-14 17:40:12 UTC
Also, here is the failure when building 0.18-r1:

make[2]: Entering directory `/var/tmp/portage/mythtv-0.18-r1/work/mythtv-0.18/programs/mythepg'
g++ -c -pipe -march=pentiumpro -mmmx -I/usr/kde/3.1/include -Wall -W -O3 -Wall -Wno-switch -fomit-frame-pointer -D_REENTRANT  -DMMX -DUSING_IVTV -DUSING_XRANDR -DUSING_OPENGL_VSYNC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr\" -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -I/usr/qt/3/mkspecs/linux-g++ -I. -I../../libs -I../../libs/libmyth -I/usr/include -I/usr/qt/3/include -o main.o main.cpp
g++  -o mythepg main.o    -Wl,-rpath,/usr/qt/3/lib -L/usr/qt/3/lib -L../../libs/libmyth -L../../libs/libmythtv -L../../libs/libavcodec -L../../libs/libavformat -lmythtv-0.18 -lmythavformat-0.18 -lmythavcodec-0.18 -lmyth-0.18 -lfreetype -lmp3lame -lasound -L/usr/kde/3.1/lib -ldl -lartsc -lpthread -L/usr/X11R6/lib -lXinerama -lXv -lX11 -lXext -lXxf86vm -lGL -lGLU -lqt-mt -lXext -lX11 -lm -lpthread
../../libs/libmyth/libmyth-0.18.so: undefined reference to `XRRFreeScreenConfigInfo'
../../libs/libmyth/libmyth-0.18.so: undefined reference to `XRRConfigSizes'
../../libs/libmyth/libmyth-0.18.so: undefined reference to `XRRConfigCurrentConfiguration'
../../libs/libmyth/libmyth-0.18.so: undefined reference to `XRRGetScreenInfo'
../../libs/libmyth/libmyth-0.18.so: undefined reference to `XRRSetScreenConfigAndRate'
../../libs/libmyth/libmyth-0.18.so: undefined reference to `XRRRates'
collect2: ld returned 1 exit status
make[2]: *** [mythepg] Error 1
make[2]: Leaving directory `/var/tmp/portage/mythtv-0.18-r1/work/mythtv-0.18/programs/mythepg'
make[1]: *** [sub-mythepg] Error 2
make[1]: Leaving directory `/var/tmp/portage/mythtv-0.18-r1/work/mythtv-0.18/programs'
make: *** [sub-programs] Error 2

Just note, great to see mmx finally being enabled.
Comment 11 Doug Goldstein (RETIRED) gentoo-dev 2005-05-15 23:15:43 UTC
We no longer support xfree since it's removed from the tree ages ago. 0.18-r2 enforces this requirement.