[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#154680: libsdl-mixer1.2 doesnt work with latest vorbis (1.0.0)



On Mon, Jul 29, 2002 at 09:59:20AM -0500, Steve Langasek wrote:
> On Mon, Jul 29, 2002 at 09:46:30AM -0500, Christian T. Steigies wrote:
> > On Mon, Jul 29, 2002 at 09:32:59AM -0500, Steve Langasek wrote:
> > > On Mon, Jul 29, 2002 at 08:33:38AM -0500, Christian T. Steigies wrote:
> > > > This and:
> > > >  Bug#154704: defenguin 0.0.10-1 needs to depend on libvorbisfile3
> > > > sounds to me like the libpng mess I already created with sdl-image.
> > > > So sdl-mixer has also been broken by a new library now? I haven't done any
> > > > upload of sdl-mixer yet, this time I'd like to do it right. I assume when I
> > > > upgrade sdl-mixer to use vorbis1.0, old packages using sdl-mixer might brake
> > > > just as they brake with sdl-image and png2/3?
> 
> > > Only if other packages which depend on sdl-mixer are directly linked
> > > against libvorbis as well.  If they are, this is almost certainly a bug
> > > in those packages.
> 
> > As far as I can see defendguin does not depend nor link with libvorbis*, but
> > still:
> 
> > ldd /usr/games/defendguin | grep vorb
> >         libvorbisfile.so.0 => /usr/lib/libvorbisfile.so.0 (0x404d6000)
> >         libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0x404dd000)
> 
> ldd is worthless for tracing linking problems: it shows you the entire
> library dependency tree, not just the list of libraries directly linked
> in.  Use 'objdump -p <library> | grep NEEDED' to find out whether
> defendguin is linked against libraries it should not be.

You mean 
cts@gleep:~>objdump -p /usr/games/defendguin | grep NEEDED
  NEEDED      libSDL-1.2.so.0
  NEEDED      libpthread.so.0
  NEEDED      libSDL_mixer-1.2.so.0
  NEEDED      libm.so.6
  NEEDED      libc.so.6
 
Looks fine to me.

> > I think the problem is libvorbisfile3:
> 
> >  Version: 1.0.0-1
> >  Conflicts: libvorbis0 (<< 1.0.0)
> >  Replaces: libvorbis0 (<< 1.0.0)
> >  ^^^^^^^^
> > -rw-r--r-- root/root     22532 2002-07-19 10:45:51 ./usr/lib/libvorbisfile.so.3.0.0
> > [...]
> > lrwxrwxrwx root/root         0 2002-07-19 10:45:51 ./usr/lib/libvorbisfile.so.3 -> libvorbisfile.so.3.0.0
> 
> I don't see why the conflicts: and replaces: is necessary, but I also
> don't see why it's a problem in your case?

I have libvorbis0_1.0rc3-1_i386.deb installed which includes:
-rw-r--r-- root/root     21292 2002-01-01 20:45:31 ./usr/lib/libvorbisfile.so.0.2.0
lrwxrwxrwx root/root         0 2002-01-01 20:45:30 ./usr/lib/libvorbisfile.so.0 -> libvorbisfile.so.0.2.0

libvorbisfile3_1.0.0-1_i386.deb replaces this
 Conflicts: libvorbis0 (<< 1.0.0)
 Replaces: libvorbis0 (<< 1.0.0)

but it contains libvorbisfile with a different SONAME
-rw-r--r-- root/root     22532 2002-07-19 10:45:51 ./usr/lib/libvorbisfile.so.3.0.0
lrwxrwxrwx root/root         0 2002-07-19 10:45:51 ./usr/lib/libvorbisfile.so.3 -> libvorbisfile.so.3.0.0

So when you upgrade to this version, all programs built with the previous
one don't find their libvorbisfile anymore. Or what don't I understand here?

Maybe all this will be fixed when I rebuild sdl-mixer with vorbis 1.0.0 (and
I don't have to rebuild defendguin for that?), but I want to be sure this
time. 

I still think the bug it with vorbis when it pulls away the library under my
legs, how am I supposed to know? Shouldn't it keep the old library around
until all packages that depend on it have been notified and updated?

Christian


-- 
To UNSUBSCRIBE, email to debian-devel-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org



Reply to: