[vlc-devel] No more static theora library provided in latest libtheora packages leads to a vlc link error

Gilles Sabourin gilles.sabourin at free.fr
Sat Dec 22 01:17:34 CET 2007


Le Friday 21 December 2007 22:57:45 Rafaël Carré, vous avez écrit :
> Le Fri, 21 Dec 2007 22:44:07 +0100,
>
> Gilles Sabourin <gilles.sabourin at free.fr> a écrit :
> > Hi,
> >
> > This evening I have updated my configurations with latest 1.0beta2
> > libtheora packages from packman repository for openSUSE 10.2 /10.3
> >
> > Manfred Tremel from packman project has not provided static library
> > part for theora.
> >
> > Hence both vlc-0.8.6d and vlc-0.9 does not link. I tried
> > --disable-theora option, but libtool still stops on this error :
> >
> > /bin/sh ../../libtool --tag=CC --mode=link gcc -Wsign-compare -Wall
> > -pipe -o libaccess_output_shout_plugin.so
> > libaccess_output_shout_plugin.a -L/usr/lib64 -shared -lpthread -fpic
> > -fPIC -lshout -lvorbis -lm -ltheora -logg -u vlc_entry__0_8_6
> > libtool: link: cannot find the library `/usr/lib64/libtheora.la' or
> > unhandled argument `/usr/lib64/libtheora.la'
> > make[4]: *** [libaccess_output_shout_plugin.so] Error 1
> > make[4]: Leaving directory
> > `/usr/src/packages/BUILD/vlc-0.8.6d/modules/access_output'
> > make[3]: *** [all-modules] Error 1
> > make[3]: Leaving directory
> > `/usr/src/packages/BUILD/vlc-0.8.6d/modules/access_output'
> > make[2]: *** [all-recursive] Error 1
> > make[2]: Leaving directory
> > `/usr/src/packages/BUILD/vlc-0.8.6d/modules' make[1]: ***
> > [all-recursive] Error 1 make[1]: Leaving directory
> > `/usr/src/packages/BUILD/vlc-0.8.6d' make: *** [all] Error 2
> >
> > Thanks for your reply,
> > Gilles
>
> Try ./vlc-config --libs plugin access_output_shout
> if it shows theora, that means your *shout* .pc file is fucked up.
>
> % pkg-config --libs shout
> -L/usr/local/lib -lshout -lvorbis -ltheora -lspeex -lm -logg
>
> So you'll have to modify /usr/lib/pkgconfig/shout.pc to remove -ltheora

Manfred,

I am building vlc from scratch, using an adapted rpm spec file from Dominique 
Leuenberger. The problem is localized in openSUSE 10.2 distribution only.


Raphaël,

You're right. I have already encountered this problem : libtool cannot handle 
well the fact that another library still relies 
on " /usr/lib64/libtheora.la " missing path.

When greeping in /usr/lib64, I've got : 

./libquicktime/lqt_ffmpeg.la:dependency_libs=' /usr/lib64/libquicktime.la -lavcodec /usr/lib64/liba52.la /usr/lib64/libamrnb.la /usr/lib64/libamrwb.la -lgsm
/usr/lib64/libmp3lame.la -lx264 -lxvidcore /usr/lib64/libfaac.la /usr/lib64/libmp4v2.la /usr/lib64/libfaad.la /usr/lib64/libX11.la /usr/lib64/libXext.la /usr/lib64/libX11.la
/usr/lib64/libXdmcp.la /usr/lib64/libXau.la
/usr/lib64/libtheora.la
/usr/lib64/libvorbisenc.la /usr/lib64/libvorbis.la -lavutil /usr/lib64/libvorbis.la /usr/lib64/libogg.la /usr/lib64/libogg.la -lpthread -lm -lz -ldl'

./libshout.la:dependency_libs=' /usr/lib64/libtheora.la /usr/lib64/libvorbis.la /usr/lib64/libogg.la -lm /usr/lib64/libogg.la'

libquicktime and libshout have simply to be rebuilt in this new environment 
from source rpm. For libquicktime, I'll have no problem since packman 
repositories provides source rpm, but libshout comes from SUSE and they does 
not provide libshout-2.2.2-18.src.rpm

Thanks to your support and ... Merry Christmas to you and your families !

Gilles



More information about the vlc-devel mailing list