Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 145266 - libquicktime-0.9.9-r1 fails to build lqt_x264.c structure has no member named `i_rc_method'
Summary: libquicktime-0.9.9-r1 fails to build lqt_x264.c structure has no member named...
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: High normal
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-08-27 09:34 UTC by Peter Fox
Modified: 2006-08-28 02:41 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 Peter Fox 2006-08-27 09:34:12 UTC
This is how the build failed:
 i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include -I../../include/quicktime -O3 -funroll-all-loops -fomit-frame-pointer -finline-functions -Wall -Winline -MT lqt_x264.lo -MD -MP -MF .deps/lqt_x264.Tpo -c lqt_x264.c -o lqt_x264.o >/dev/null 2>&1
x264.c: In function `encode':
x264.c:495: error: structure has no member named `i_rc_method'
x264.c:495: error: `X264_RC_ABR' undeclared (first use in this function)
x264.c:495: error: (Each undeclared identifier is reported only once
x264.c:495: error: for each function it appears in.)
x264.c: At top level:
x264.c:632: error: `X264_RC_CQP' undeclared here (not in a function)
x264.c:632: error: initializer element is not constant
x264.c:632: error: (near initialization for `rc_methods[0].i')
x264.c:632: error: initializer element is not constant
x264.c:632: error: (near initialization for `rc_methods[0]')
x264.c:633: error: `X264_RC_ABR' undeclared here (not in a function)
x264.c:633: error: initializer element is not constant
x264.c:633: error: (near initialization for `rc_methods[1].i')
x264.c:633: error: initializer element is not constant
x264.c:633: error: (near initialization for `rc_methods[1]')
x264.c:634: error: `X264_RC_CRF' undeclared here (not in a function)
x264.c:634: error: initializer element is not constant
x264.c:634: error: (near initialization for `rc_methods[2].i')
x264.c:634: error: initializer element is not constant
x264.c:634: error: (near initialization for `rc_methods[2]')
x264.c: In function `set_parameter':
x264.c:654: error: structure has no member named `i_rc_method'
make[3]: *** [x264.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory `/var/tmp/portage/libquicktime-0.9.9-r1/work/libquicktime-0.9.9/plugins/x264'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/libquicktime-0.9.9-r1/work/libquicktime-0.9.9/plugins'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/libquicktime-0.9.9-r1/work/libquicktime-0.9.9'
make: *** [all] Error 2

!!! ERROR: media-libs/libquicktime-0.9.9-r1 failed.
Call stack:
  ebuild.sh, line 1539:   Called dyn_compile
  ebuild.sh, line 939:   Called src_compile
  libquicktime-0.9.9-r1.ebuild, line 52:   Called die

emerge --info:
--- Invalid atom in /etc/portage/package.keywords: net-nntp/pan-0.14.2
Portage 2.1-r2 (default-linux/x86/2006.0, gcc-3.4.6, glibc-2.4-r3, 2.6.17-gentoo-r4 i686)
=================================================================
System uname: 2.6.17-gentoo-r4 i686 AMD Sempron(tm) Processor 2800+
Gentoo Base System version 1.12.4
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
app-admin/eselect-compiler: [Not Present]
dev-lang/python:     2.3.5-r2, 2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     [Not Present]
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool:   1.4.3-r4, 1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=athlon-xp -mmmx -msse -mfpmath=sse -m3dnow -msse2 -O3 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-march=athlon-xp -mmmx -msse -mfpmath=sse -m3dnow -msse2 -O3 -pipe -fomit-frame-pointer"
DISTDIR="/home/gentoo/gentoo/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="ftp://peter/pub http://distfiles.gentoo.org"
LANG="en_GB"
LINGUAS="en en_GB fr es de"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/home/gentoo/portage"
SYNC="rsync://peter/gentoo-portage"
USE="x86 3dnow 3dnowext X aalib acpi alsa apache2 audiofile avi berkdb bitmap-fonts bzip2 cairo cdr cli crypt cups curl dlloader doc dri dvdr eds emboss encode esd exif ffmpeg firefox flac foomaticdb fortran gd gdbm gif gimp gimpprint gnome gphoto2 gpm gstreamer gtk gtk2 gtkhtml hal imagemagick imlib isdnlog jack java jbig jpeg jpeg2k lcms libg++ libwww lynxkeymap mad mikmod mmx mng mono motif mozilla mp3 mpeg ncurses nls nptl nptlonly ogg oggvorbis opengl pam pcre pdf pdflib perl png pppd python qemu-fast qt3 qt4 quicktime readline reflection samba sdl session softmmu speex spell spl sqlite sse sse2 ssl svg tcpd tetex tiff truetype truetype-fonts type1-fonts udev usb vorbis win32codecs wmf xml xml2 xmms xorg xv xvid zlib elibc_glibc input_devices_keyboard input_devices_mouse kernel_linux linguas_en linguas_en_GB linguas_fr linguas_es linguas_de userland_GNU video_cards_nvidia video_cards_vesa"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2006-08-27 09:37:48 UTC
Reopen w/ media-libs/x264-svn version.
Comment 2 Peter Fox 2006-08-27 12:40:54 UTC
This is my x264-svn version from emerge -pv. I also tried rebuilding it, but it still didn't work:

[ebuild   R   ] media-libs/x264-svn-20060612  USE="-debug -mp4 -threads" 0 kB
Comment 3 Jakub Moc (RETIRED) gentoo-dev 2006-08-27 12:48:09 UTC
If you unmasked libquicktime, take care to unmask its dependencies as well (such as x264-svn).
Comment 4 Peter Fox 2006-08-28 01:52:22 UTC
I had added ~x86 to package.keywords, yet no update to x264-svn occurred.
I then added x264-svn to package.unmask, and 'emerge x264-svn' built media-libs/x264-svn-20060810.

When I did an emerge -uNDv world, libquicktime built fine, but then it also downgraded to media-libs/x264-svn-20060612.

If libquicktime-0.9.9-r1 depends on media-libs/x264-svn-20060810, then it should say so in the ebuild so that I would be told about the masking. 

I've now got media-video/mplayer-1.0_pre8 wanting to downgrade x264-svn, fighting libquicktime-0.9.9-r1 which wants the latest.

emerge -putNDv world with media-libs/x264-svn-20060810:
[nomerge      ] media-video/mplayer-1.0_pre8  USE="3dfx 3dnow 3dnowext X aac aalib alsa bidi bl cdparanoia doc dts dv dvb dvd dvdread encode esd gif gtk jack jpeg libcaca live livecd lzo mad mmx nvidia opengl png real samba sdl speex sse sse2 theora truetype v4l v4l2 vorbis win32codecs x264 xanim xmms xv xvid -arts -bindist -cpudetection -custom-cflags -debug -dga -directfb -fbcon -ggi -i8x0 -ipv6 -joystick -lirc -matrox -mmxext -musepack -nas -openal -oss -rtc -svga -tga -unicode -xinerama -xvmc"

[ebuild     UD]  media-libs/x264-svn-20060612 [20060810] USE="-debug -mp4 -threads" 0 kB

emerge -putNDv world with media-libs/x264-svn-20060612:
[nomerge      ] gnome-extra/nautilus-cd-burner-2.14.2  USE="cdr dvdr hal -debug -static"
[nomerge      ]  app-cdr/dvd+rw-tools-6.1-r1
[nomerge      ]   app-cdr/dvdrtools-0.3.1  USE="encode"
[nomerge      ]    media-video/transcode-1.0.2-r2  USE="3dnow X a52 dv dvdread fame gtk imagemagick jpeg lzo mjpeg mmx mp3 mpeg ogg quicktime sdl sse sse2 theora truetype vorbis xml xvid -extrafilters -network -v4l2"
[nomerge      ]     media-libs/libquicktime-0.9.9-r1  USE="X mmx"
[ebuild     U ]      media-libs/x264-svn-20060810 [20060612] USE="-debug -mp4 -threads" 0 kB


I'm not ready to go to modular X yet, and later than media-video/mplayer-1.0_pre8 depends on it. Can of worms anyone?

To summarise, the bug is that libquicktime-0.9.9-r1 should be dependent on media-libs/x264-svn-20060810.

I'll have to sort out my use of packages with mixed masking.
Comment 5 Jakub Moc (RETIRED) gentoo-dev 2006-08-28 02:41:25 UTC
(In reply to comment #4)
> I had added ~x86 to package.keywords, yet no update to x264-svn occurred.
> I then added x264-svn to package.unmask, and 'emerge x264-svn' built
> media-libs/x264-svn-20060810.
> 
> When I did an emerge -uNDv world, libquicktime built fine, but then it also
> downgraded to media-libs/x264-svn-20060612.

Don't mess w/ package.masked stuff if you don't know what you are doing. And yes, it will downgrade, b/c not all ebuilds are ready for the package.masked x264-svn. That's why it's package.masked.