Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 16191 - media-video/mjpegtools-1.6.0-r5 failure to compile
Summary: media-video/mjpegtools-1.6.0-r5 failure to compile
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-02-22 15:14 UTC by FieldySnuts
Modified: 2003-02-25 19:11 UTC (History)
1 user (show)

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 FieldySnuts 2003-02-22 15:14:25 UTC
media-video/mjpegtools-1.6.0-r5 fails to compile while emerging gnome.




Reproducible: Always
Steps to Reproduce:
1. emerge rsync
2. emerge -b gnome or emerge -b mjpegtools (with -b or without)
3. wait

Actual Results:  
i686-pc-linux-gnu-gcc -mcpu=i686 -march=i686 -march=i686 -O3 -pipe -Wall
-Wunused -o .libs/yuvscaler yuvscaler.o yuvscaler_resample.o yuvscaler_bicubic.o
 -L/var/tmp/portage/mjpegtools-1.6.0-r5/work/mjpegtools-1.6.0/utils -lmjpegutils
-lm ./.libs/liblavfile.so -L/usr/lib -lmovtar
-L/var/tmp/portage/mjpegtools-1.6.0-r5/work/mjpegtools-1.6.0/../quicktime4linux-1.4-patch
-L/var/tmp/portage/mjpegtools-1.6.0-r5/work/mjpegtools-1.6.0/../quicktime4linux-1.4-patch/i686
-lquicktime -lpthread -lpng -lz -lm -L/lib -ldl -L/usr/include/jpeg-mmx
-L/usr/local/lib /usr/lib/libdv.so /usr/lib/libpopt.so /usr/lib/libSDL.so -lm
-L/usr/kde/3/lib -lartsc -L/usr/X11R6/lib -lX11 -lXext -lvga -ldl -lpthread -lm
/usr/lib/libglib.so -lpthread -ldl ./.libs/liblavjpeg.so /usr/lib/libjpeg.so
/usr/i686-pc-linux-gnu/bin/ld: cannot find -lartsc
collect2: ld returned 1 exit status
make[2]: *** [yuvscaler] Error 1
make[2]: *** Waiting for unfinished jobs....
i686-pc-linux-gnu-gcc -mcpu=i686 -march=i686 -march=i686 -O3 -pipe -Wall
-Wunused -o .libs/jpeg2yuv jpeg2yuv.o -rdynamic 
-L/var/tmp/portage/mjpegtools-1.6.0-r5/work/mjpegtools-1.6.0/utils -lmjpegutils
./.libs/liblavjpeg.so -L/usr/include/jpeg-mmx /usr/lib/libjpeg.so -L/usr/lib
-L/usr/X11R6/lib /usr/lib/libgtk.so /usr/lib/libgdk.so /usr/lib/libgmodule.so
/usr/lib/libglib.so -ldl -lXi -lXext -lX11 -lm
creating jpeg2yuv
i686-pc-linux-gnu-g++ -march=i686 -O3 -pipe -o .libs/lav2divx lav2divx.o
lav_common.o -Wl,-rpath -Wl,/usr/lib 
-L/var/tmp/portage/mjpegtools-1.6.0-r5/work/mjpegtools-1.6.0/utils -lmjpegutils
./.libs/liblavfile.so -L/usr/lib -lmovtar
-L/var/tmp/portage/mjpegtools-1.6.0-r5/work/mjpegtools-1.6.0/../quicktime4linux-1.4-patch
-L/var/tmp/portage/mjpegtools-1.6.0-r5/work/mjpegtools-1.6.0/../quicktime4linux-1.4-patch/i686
-lquicktime -lpthread -lpng -lm -L/lib -ldl -L/usr/include/jpeg-mmx
-L/usr/local/lib -lm -L/usr/kde/3/lib -L/usr/X11R6/lib -ldl -lpthread -lm
-lpthread -ldl ./.libs/liblavjpeg.so /usr/lib/libjpeg.so /usr/lib/libdv.so
/usr/lib/libpopt.so -lm -lartsc -ldl -lpthread -lm /usr/lib/libglib.so -lpthread
-ldl /usr/lib/libaviplay.so -lz /usr/lib/libSDL.so /usr/lib/libesd.so
/usr/lib/libaudiofile.so -lm -lvga -lSM -lICE -lXinerama -lXv -lXxf86vm
-lXxf86dga -lXi -lXext -lX11 -lXft /usr/lib/libfreetype.so -lfontconfig
-lXrender -lpthread -lnsl -ldl -lm
/usr/i686-pc-linux-gnu/bin/ld: cannot find -lartsc
collect2: ld returned 1 exit status
make[2]: *** [lav2divx] Error 1
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/var/tmp/portage/mjpegtools-1.6.0-r5/work/mjpegtools-1.6.0'
make: *** [all] Error 2

!!! ERROR: media-video/mjpegtools-1.6.0-r5 failed.
!!! Function src_compile, Line -175, Exitcode 2
!!! (no error message)

Expected Results:  
Compiled sucessfully and continued emerging gnome.

# emerge info
Portage 2.0.46-r2 (default-1.0, gcc-2.95.3, glibc-2.2.5-r2,2.2.5-r6)
=================================================================
System uname: 2.4.19-ipv6-imzzo-coda i686 AuthenticAMD
USE="x86 oss apm avi crypt cups jpeg libg++ mikmod mpeg ncurses qtmt quicktime
spell xml2 xv berkdb bonobo esd gdbm gif gnome-libs gpm gtkhtml guile imlib java
ldap libwww motif mozilla nls opengl pam png python qt readline scanner sdl
slang ssl svga tcpd tetex tiff X gtk gtk2 gnome -alsa -arts 3dnow cdr encode kde
mmx oggvorbis pdflib perl sse truetype xmms ipv6"
ARCH="x86"
COMPILER=""
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=i686 -O3 -pipe"
CXXFLAGS="-march=i686 -O3 -pipe"
ACCEPT_KEYWORDS="x86 ~x86"
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config
/usr/kde/3/share/config /usr/kde/3.1/share/config /usr/share/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
MAKEOPTS="-j3"
JDK_HOME="/opt/blackdown-jdk-1.3.1"
JAVA_HOME="/opt/blackdown-jdk-1.3.1"
AUTOCLEAN="yes"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
GENTOO_MIRRORS="http://csociety-ftp.ecn.purdue.edu/pub/gentoo
ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo ftp://gentoo.linux.no/pub/gentoo
ftp://ftp.oregonstate.edu/pub/gentoo
http://www.ibiblio.org/pub/Linux/distributions/gentoo"
Comment 1 Martin Holzer (RETIRED) gentoo-dev 2003-02-23 04:38:05 UTC
update your system

emerge sync
emerge -pu world --deep
at lease portage, gcc and system packages

then try again
Comment 2 FieldySnuts 2003-02-23 11:31:07 UTC
Alright. I have not done a world update like this before, so I'm a little wary.

Is there anything special I need to know, as in possible problems, things to watch out for, etc?

Thanks.
Comment 3 Seemant Kulleen (RETIRED) gentoo-dev 2003-02-23 17:43:15 UTC
basically what happened is that you had KDE (and ARTS -- KDE's soundserver) installed, and some things linked to it.  You have, since, removed KDE and arts, but there are libs on your system which still try to link to the arts library.

Two choices: remerge kde; or find /usr/lib -name '*.so' | xargs ldd

to find out what is still linking to arts.  then qpkg -f on those .so files to find out which package they came from, and remerge those packages (make sure you have -kde -qt -arts in USE).
Comment 4 CJ Kucera 2003-02-24 18:27:17 UTC
I just had this problem myself, and there's no need to rebuild the entire system.  Taking a hint from http://forums.gentoo.org/viewtopic.php?t=34669&highlight=mjpegtools run this command:

find / -name '*.la' | xargs grep -l '/usr/kde/3/lib'

Chances are you'll notice that there's a "libdv" in the list, and possibly some others.  Just re-emerge the ones that show up (for me, it was just libdv).
Comment 5 FieldySnuts 2003-02-25 07:44:32 UTC
First, I tried the emerge -pu world --deep after updating portage:

# emerge -pu world --deep

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

Calculating world dependencies /
!!! all ebuilds that could satisfy "virtual/glu" have been masked.
!!!    (dependency required by "x11-libs/qt-3.1.0-r3" [ebuild])

And that's as far as I get.

Now for CJ's suggestion:

# find / -name '*.la' | xargs grep -l '/usr/kde/3/lib'
/var/tmp/portage/mjpegtools-1.6.0-r5/work/mjpegtools-1.6.0/lavtools/.libs/liblavfile.la
/var/tmp/portage/mjpegtools-1.6.0-r5/work/mjpegtools-1.6.0/lavtools/liblavfile.la
/usr/lib/ao/plugins-2/libarts.la
/usr/lib/kde3/libkemergepart.la
find: /proc/32719/fd: No such file or directory
/usr/lib/libdv.la

The only two I was able to find in portage were libarts (as media-libs/libart_lgpl) and libdv (as media-libs/libdv).

libdv is already the latest, should I rebuild it anyway? libarts however is one version back:

*  media-libs/libart_lgpl
      Latest version available: 2.3.11
      Latest version installed: 2.3.10

So I'll try rebuilding that. I'll have to get around to all of this later, as I'm off to work.

Cheers.
Comment 6 CJ Kucera 2003-02-25 08:43:07 UTC
Yeah, rebuild libdv anyway.  What happened is that libdv was compiled with an older version of KDE, and the directory KDE used to live in doesn't exist anymore.  The .la files are informational, and they tell you how the library was compiled and where it found its dependencies and whatnot, and mjpegtools uses those files to determine what IT needs to link in.  So once you recompile libdv using the currently-installed KDE, the .la file will be updated and mjpegtools will continue on its way.

The one "libarts" file you noticed looks like it's actually a part of "libao," and I don't think you need to worry about that one (and the "arts" package is kde-base/arts, I believe, not media-libs/libart_lgpl).  You may want to find out what package owns libkemergepart.la and redo that one as well.
Comment 7 FieldySnuts 2003-02-25 11:54:22 UTC
re-emerged libdv, and also kemerge (which was what owned that other file), however I'm still getting mjpegtools compile failure:

i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I/usr/include -DG_LOG_DOMAIN=\"lavtools\" -DLAVPLAY_VERSION=\"1.6.0\" -I/usr/include -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/local/include -I /var/tmp/portage/mjpegtools-1.6.0-r7/work/quicktime4linux-1.4-patch -I/usr/X11R6/include -I /usr/X11R6/include -I../utils -I/usr/include/avifile -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/X11R6/include    -mcpu=i686 -march=i686 -march=i686 -O3 -pipe -Wall -Wunused -c `test -f yuvmedianfilter.c || echo './'`yuvmedianfilter.c
make[2]: *** [lav_io.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
lav_common.c: In function `lav_init_dv_decoder':
lav_common.c:425: too few arguments to function `dv_decoder_new'
make[2]: *** [lav_common.o] Error 1
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/mjpegtools-1.6.0-r7/work/mjpegtools-1.6.0'
make: *** [all] Error 2

!!! ERROR: media-video/mjpegtools-1.6.0-r7 failed.
!!! Function src_compile, Line -215, Exitcode 2
!!! (no error message)



Thanks for sticking with me on this.
Comment 8 CJ Kucera 2003-02-25 11:56:33 UTC
That's a different issue which is covered in a number of other bugs I've seen here and also in the forums.  I'm also wholly unfamiliar with it.  I'd suggest looking around there...
Comment 9 Martin Holzer (RETIRED) gentoo-dev 2003-02-25 13:08:00 UTC
Once AGAIN and AGAIN

-r5 is the latest working gcc 2.95

Comment 10 FieldySnuts 2003-02-25 19:11:36 UTC
Gotchya, forgot about doing that. Thanks.