Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 74189 - mpeg4ip: missing xvid dep and broken compilation without X, gtk+, sdl
Summary: mpeg4ip: missing xvid dep and broken compilation without X, gtk+, sdl
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Olivier Crete (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-12-12 06:14 UTC by Christian Zoffoli (RETIRED)
Modified: 2005-01-04 09:05 UTC (History)
0 users

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


Attachments
some dep fixes, fixed compilation without X (mpeg4ip-missing-dep_and-compiling_without_X.chris.patch,951 bytes, patch)
2004-12-12 06:15 UTC, Christian Zoffoli (RETIRED)
Details | Diff
some dep fixes, fixed compilation without X - FIXED (mpeg4ip-missing-dep_and-compiling_without_X.chris.patch.new,921 bytes, patch)
2004-12-14 17:01 UTC, Christian Zoffoli (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Christian Zoffoli (RETIRED) gentoo-dev 2004-12-12 06:14:07 UTC
1) mpeg4ip doesn't include anymore xvid source code
2) now, it's impossible to build mpeg4ip without X, gtk+ and sdl 
using the proposed patch you can compile it without X, gtk+ and sdl (disabling mp4live and mp4player)


Reproducible: Always
Steps to Reproduce:
1.
2.
3.




Portage 2.0.51-r3 (default-linux/x86/2004.3, gcc-3.3.4, glibc-2.3.4.20040808-r1,
2.6.8.1 i686)
=================================================================
System uname: 2.6.8.1 i686 Pentium III (Coppermine)
Gentoo Base System version 1.4.16
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r5
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.15.90.0.1.1-r3
Headers:  sys-kernel/linux-headers-2.4.21-r1
Libtools: sys-devel/libtool-1.5.2-r7
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O3 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3.1/share/config /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/share/config
/usr/lib/fax /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/ /var/bind /var/qmail/alias /var/qmail/control
/var/spool/fax/etc"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O3 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig buildpkg ccache distlocks sandbox sfperms"
GENTOO_MIRRORS="http://www.gigaload.org/gentoo.org/ http://gentoo.mirror.icd.hu/
ftp://ftp.linux.ee/pub/gentoo/distfiles/"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages/x86/desktop"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://10.0.4.11/gentoo-portage"
USE="X aac aalib acl acpi acpi4linux adns aliaschain alsa altcolors amd apache2
apm aredmem arts artswrappersuid atlas atm audiofile avi ba-completion berkdb
bitmap-fonts blas bonobo cdb cddb cdparanoia cdr cdrom cjk clamav codecs crypt
cups devfs26 dga divx4linux djbfft dlz dv dvd dvdr dvdread edl encode esd
ethereal evo extensions f77 faac faad fam fbcon festival ffmpeg fftw flac flood
font-server foomaticdb fortran freetts freetype frlargefiles gdbm gif gimp
gimpprint glut gnokii gnome gphoto2 gpm gps gs gsm gstreamer gtk gtk2 gtkhtml
guild ieee1394 imagemagick imlib imlib2 innodb ipv6 irda irmc jabber2 jack
javajp2 jpeg jpeg2k junit kadu-modules kadu-voice kde kerberos lcms ldap
ldirectord libg++ libwww lirc live lzo lzw lzw-tiff mad maildir maildrop
mailwrapper matroska mbrola mdb mew mha mikmod mime mimencode mmap mmx mng motif
mozcalendar mozdevelop mozilla mozsvg mozxmlterm mp3 mpeg mpeg4 mplayer msdav
mysql mythtv ncursees ncurses network neural nls nntp ntlm nvidia oav odbc
oggvorbis openal opengl opens opie oss pam pcmcia pcre pda pdf pdfkit pdflib
perl php png pnp postgres ppds procmail pthreads pwdb python qmail qt quicktime
quotes radeon readline remote roundrobin samba sasl scanner sdl slang sms snmp
speex spel spell sqlite ssl svg svga szip tcltk tcpd tetex tga tiff tinydyndns
transcode truetype type1 type1-fonts unicode v4l v4l2 vda vhosts vim vim-with-x
virus-scan wmf wsconvert x86 xine xinerama xinetd xml xml2 xmms xosd xpm xv xvid
yv12 zaptel zlib"
Comment 1 Christian Zoffoli (RETIRED) gentoo-dev 2004-12-12 06:15:00 UTC
Created attachment 45818 [details, diff]
some dep fixes, fixed compilation without X
Comment 2 Gregg Casillo 2004-12-14 14:28:36 UTC
This is promising and very useful to me indeed. Like you, I could not get mpeg4ip to build without xorg-x11, gtk+, and sdl. I didn't want this for a console only server I'm using to trancode mpeg-2 files to mpeg-4 files.

Ran Christian's patch successfully. Uninstalled xorg-x11 and gtk+. Ran emerge against the patched mpeg4ip-1.1 ebuild...but it failed.

Making all in yuv
make[3]: Entering directory `/var/tmp/portage/mpeg4ip-1.1/work/mpeg4ip-1.1/util/yuv'
if g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I. -I../../include   -D_REENTRANT -DNOCONTROLS -fexceptions -Wall   -Wno-char-subscripts -Woverloaded-virtual -Wno-unknown-pragmas -Wno-deprecated -Wformat=2 -march=pentium4 -O3 -pipe -fomit-frame-pointer -DUSE_MMX -DMPEG4IP -MT yuvdump.o -MD -MP -MF ".deps/yuvdump.Tpo" \
  -c -o yuvdump.o `test -f 'yuvdump.cpp' || echo './'`yuvdump.cpp; \
then mv -f ".deps/yuvdump.Tpo" ".deps/yuvdump.Po"; \
else rm -f ".deps/yuvdump.Tpo"; exit 1; \
fi
/bin/sh ../../libtool --mode=link g++ -D_REENTRANT -DNOCONTROLS -fexceptions -Wall   -Wno-char-subscripts -Woverloaded-virtual -Wno-unknown-pragmas -Wno-deprecated -Wformat=2 -march=pentium4 -O3 -pipe -fomit-frame-pointer -DUSE_MMX -DMPEG4IP   -o yuvdump  yuvdump.o -L/usr/lib -Wl,-rpath,/usr/lib -lSDL -lpthread -lm -ldl
mkdir .libs
g++ -D_REENTRANT -DNOCONTROLS -fexceptions -Wall -Wno-char-subscripts -Woverloaded-virtual -Wno-unknown-pragmas -Wno-deprecated -Wformat=2 -march=pentium4 -O3 -pipe -fomit-frame-pointer -DUSE_MMX -DMPEG4IP -o yuvdump yuvdump.o -Wl,-rpath -Wl,/usr/lib  -L/usr/lib /usr/lib/libSDL.so /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/libstdc++.so -L/usr/i686-pc-linux-gnu/bin -L/usr/i686-pc-linux-gnu/lib -L/usr/lib/gcc-lib/../../i686-pc-linux-gnu/lib -lgcc_s -lc /usr/lib/libasound.so -L/usr/X11R6/lib -lX11 -lXext -lpthread -lm -ldl -Wl,--rpath -Wl,/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4 -Wl,--rpath -Wl,/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/../../../../i686-pc-linux-gnu/bin/ld: cannot find -lX11
collect2: ld returned 1 exit status
distcc[11792] ERROR: compile (null) on localhost failed
make[3]: *** [yuvdump] Error 1
make[3]: Leaving directory `/var/tmp/portage/mpeg4ip-1.1/work/mpeg4ip-1.1/util/yuv'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/mpeg4ip-1.1/work/mpeg4ip-1.1/util'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/mpeg4ip-1.1/work/mpeg4ip-1.1'
make: *** [all] Error 2

!!! ERROR: media-video/mpeg4ip-1.1 failed.
!!! Function src_compile, Line 73, Exitcode 2

My emerge info in case I'm missing something obvious:
Portage 2.0.51-r3 (default-linux/x86/2004.3, gcc-3.3.4, glibc-2.3.4.20040808-r1, 2.6.9-gentoo-r8 i686)
=================================================================
System uname: 2.6.9-gentoo-r8 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz
Gentoo Base System version 1.4.16
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r5
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.15.90.0.1.1-r3
Headers:  sys-kernel/linux26-headers-2.6.8.1-r1
Libtools: sys-devel/libtool-1.5.2-r7
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distcc distlocks sandbox sfperms"
GENTOO_MIRRORS="ftp://mirrors.tds.net/gentoo http://mirror.datapipe.net/gentoo"
MAKEOPTS="-j9"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="acpi alsa apache2 apm audiofile avi bash-completion berkdb bzlib crypt divx4linux encode flac gdbm imagemagick libg++ libwww mad mmx mpeg mssql ncurses nls nptl nptlonly oggvorbis pam perl python quicktime readline samba sdl simplexml sndfile soap speex sse ssl tcpd theora x86 xml xml2 xmlrpc xvid zlib"
Comment 3 Christian Zoffoli (RETIRED) gentoo-dev 2004-12-14 17:00:26 UTC
reply to comment #2:

you are right I made a mistake, I've fixed the patch.

Now you need libsdl (you can compile it without X support), but X and gtk+ isn't needed.
Comment 4 Christian Zoffoli (RETIRED) gentoo-dev 2004-12-14 17:01:04 UTC
Created attachment 46002 [details, diff]
some dep fixes, fixed compilation without X - FIXED
Comment 5 Olivier Crete (RETIRED) gentoo-dev 2004-12-14 19:39:56 UTC
doesnt mpeg4ip include its own libsdl? Can you confirm that libsdl is always needed ?
Comment 6 Christian Zoffoli (RETIRED) gentoo-dev 2004-12-14 19:51:35 UTC
reply comment #5
Yes, now is always needed.

Comment 7 Gregg Casillo 2004-12-18 16:43:57 UTC
Applied Christian's latest patch on a console only server. SUCCESS! Thanks, Christian.
Comment 8 Olivier Crete (RETIRED) gentoo-dev 2004-12-31 00:28:11 UTC
This should be in the 1.2 ebuild now using thr "gtk" use flag.. please test..
Comment 9 Gregg Casillo 2005-01-03 11:06:55 UTC
Emerging mpeg4ip-1.2 without Christian's patch brakes because it can't find Xlib.h:

/bin/sh ../../libtool --mode=link g++ -D_REENTRANT -DNOCONTROLS -fexceptions -Wall   -Wno-char-subscripts -Woverloaded-virtual -Wno-unknown-pragmas -Wno-deprecated -Wformat=2 -DPLAYER_PLUGIN_DIR=\"/usr/lib/mp4player_plugin\"   -march=pentium4 -O3 -pipe -fomit-frame-pointer -DUSE_MMX -DMPEG4IP -I/usr/include/SDL -D_REENTRANT   -o libmp4playerutils.la   our_bytestream_file.lo player_util.lo  -ldl
In file included from video_sdl.cpp:31:
/usr/include/SDL/SDL_syswm.h:55:22: X11/Xlib.h: No such file or directory
/usr/include/SDL/SDL_syswm.h:56:23: X11/Xatom.h: No such file or directory
distcc[6174] ERROR: compile video_sdl.cpp on poe failed
make[4]: *** [video_sdl.lo] Error 1
make[4]: *** Waiting for unfinished jobs....
ar cru .libs/libmp4playerutils.a .libs/our_bytestream_file.o .libs/player_util.o
ranlib .libs/libmp4playerutils.a
creating libmp4playerutils.la
(cd .libs && rm -f libmp4playerutils.la && ln -s ../libmp4playerutils.la libmp4playerutils.la)
 g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I. -I../../common/video/mpeg4 -I./codec -I./codec/mpeg4 -I../lib -I../lib/audio -I../../lib/SDLAudio/include -I../../lib/mp4 -I../../lib/mp4v2 -I../../lib/ismacryp -I../../include -I../../include -I../../lib/avi -I../../lib -I../../lib/mpeg2ps -I../../lib/sdp -I../../lib/mp4av -I../../lib/utils -I../../lib/audio -D_REENTRANT -DNOCONTROLS -fexceptions -Wall -Wno-char-subscripts -Woverloaded-virtual -Wno-unknown-pragmas -Wno-deprecated -Wformat=2 -DPLAYER_PLUGIN_DIR=\"/usr/lib/mp4player_plugin\" -march=pentium4 -O3 -pipe -fomit-frame-pointer -DUSE_MMX -DMPEG4IP-I/usr/include/SDL -D_REENTRANT -MT audio_buffer.lo -MD -MP -MF .deps/audio_buffer.Tpo -c audio_buffer.cpp -o audio_buffer.o >/dev/null 2>&1
make[4]: Leaving directory `/var/tmp/portage/mpeg4ip-1.2/work/mpeg4ip-1.2/player/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/var/tmp/portage/mpeg4ip-1.2/work/mpeg4ip-1.2/player/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/mpeg4ip-1.2/work/mpeg4ip-1.2/player'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/mpeg4ip-1.2/work/mpeg4ip-1.2'
make: *** [all] Error 2

After applying Christian's fixed patch, I attempted to emerge mpeg4ip-1.2 again...SUCCESS. My emerge info for reference:

Portage 2.0.51-r3 (default-linux/x86/2004.3, gcc-3.3.4, glibc-2.3.4.20040808-r1, 2.6.9-gentoo-r9 i686)
=================================================================
System uname: 2.6.9-gentoo-r9 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz
Gentoo Base System version 1.4.16
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r5
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.15.90.0.1.1-r3
Headers:  sys-kernel/linux26-headers-2.6.8.1-r1
Libtools: sys-devel/libtool-1.5.2-r7
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distcc distlocks sandbox sfperms"
GENTOO_MIRRORS="ftp://mirrors.tds.net/gentoo"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 aac acl acpi alsa apache2 apm audiofile avi bash-completion berkdb bzlib cdr crypt divx4linux encode flac gdbm imagemagick imap innodb libwwwmad maildir mikmod mime mmx mpeg mysql ncurses nls nptl nptlonly oggvorbis perl php python quicktime readline samba sdl simplexml sndfile soap speex sse ssl tcpd theora vhosts xml xml2 xmlrpc xsl xvid zlib"
Comment 10 Olivier Crete (RETIRED) gentoo-dev 2005-01-03 11:42:08 UTC
arg I might have forgotten one thing.. re-opening... Thanks for the testing
Comment 11 Olivier Crete (RETIRED) gentoo-dev 2005-01-03 19:06:24 UTC
forgot the --disable-player ... its now in.. and I finally decided to change the use flag from gtk to X.. 
Comment 12 Gregg Casillo 2005-01-04 09:05:21 UTC
SUCCESS. Thank you and well done, Olivier and Christian.