On Fri, 09 Nov 2012 09:51:05 +1030, Ron wrote: > > My impression at the moment is: > > - There's a bug but mumble still works, as confirmed by the submitter > And the fix should be trivial. libmumble uses symbols from libGL but > doesn't link to it, and so will fail unless that's fixed and it does.
So, let's fix it :)
The term "trivial" triggered me into trying it myself.
The attached patch adds -lGL to LIBS in overlay_gl/overlay_gl.pro
which seems to determine the libmumble build.
The result:
- No more "undefined symbol" errors when starting mumble:
% mumble
PulseAudio: Connection failure: Connection refused
G15LCDEngineUnix: Unable to connect to G15Daemon.
CELT bitstream 8000000b from /usr/lib/mumble/libcelt0.so.0.7.0
Locale is C
TextToSpeech: Failed to contact speech dispatcher.
Database SQLite: "3.7.14.1"
Overlay: Listening on "/home/gregoa/.MumbleOverlayPipe"
GlobalShortcutX: Unable to open any keyboard input devices under /dev/input,
falling back to XInput
GlobalShortcutX: Using XI2 2.0
AudioInput: 40000 bits/s, 48000 hz, 480 sample CELT
ALSAAudioOutput: Initialized
ALSAAudioInput: Initing audiocapture default.
ALSAAudioInput: Actual buffer 48000 hz, 1 channel 4096 samples [1024 per period]
AudioInput: Initialized mixer for 1 channel 48000 hz mic and 0 channel 48000 hz
echo
ALSAAudioOutput: ALSA reports 10000 output channels. Clamping to 2.
ALSAAudioOutput: Actual buffer 48000 hz, 2 channel 3072 samples [1024 per
period]
ALSAAudioOutput: Initializing 2 channel, 48000 hz mixer
AudioOutput: Initialized 2 channel 48000 hz mixer
warning: The VAD has been replaced by a hack pending a complete rewrite
ALSAAudioInput: Releasing ALSA Mic.
ALSAAudioOutput: Destroyed
- libmumble is linked against libGL (and many more things (?)):
% ldd /usr/lib/mumble/libmumble.so
linux-vdso.so.1 => (0x00007fff703ff000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007faa3a188000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007faa39f84000)
libGL.so.1 => /usr/lib/x86_64-linux-gnu/libGL.so.1 (0x00007faa39d23000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007faa39999000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
(0x00007faa3977d000)
/lib64/ld-linux-x86-64.so.2 (0x00007faa3a5b6000)
libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0
(0x00007faa39557000)
libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007faa39344000)
libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1
(0x00007faa39142000)
libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3
(0x00007faa38f3b000)
libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1
(0x00007faa38d3a000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007faa389fe000)
libxcb-glx.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0
(0x00007faa387e5000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007faa385c5000)
libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1
(0x00007faa383bf000)
libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007faa381b2000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6
(0x00007faa37eab000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007faa37c29000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007faa37a12000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007faa3780f000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6
(0x00007faa37609000)
> > of the LP bug and by Chris now. So the priority is probably fine.
> That kind of depends on whether it's considered acceptable for the
> mumble-overlay / preloading libmumble described in the README to be
> completely broken for Wheezy. Since that clearly can't work as it is
> documented if libmumble can't be loaded because of a broken DT_NEEDED.
Ok, so the problem is not starting mumble itself, as reported by dkg, but
mumble-overlay / preloading libmumble ...
> (That's a separate issue from the 'mumble' binary continuing to work
> after its dlopen attempt fails, but is the real effect of the actual
> bug behind the one lesser symptom of it first reported here).
Ok.
> > - The bug is not new but, as Ron implied, newly reported.
> > Is this correct?
> I think so, we can add this to the growing list of things it's been
> shipping for some time that nobody apparently ever used or tested :/
> (or that they tested and then shrugged off as "not sure how useful
> that is for Debian" when it didn't work because it was broken ):
Yeah, seems so :/
Cheers,
gregor, hoping that his patch attempt might be useful
--
.''`. Homepage: http://info.comodo.priv.at/ - OpenPGP key 0xBB3A68018649AA06
: :' : Debian GNU/Linux user, admin, and developer - http://www.debian.org/
`. `' Member of VIBE!AT & SPI, fellow of the Free Software Foundation Europe
`- NP: Tom Waits: Day After Tomorrow
diff -Nru mumble-1.2.3-349-g315b5f5/debian/changelog mumble-1.2.3-349-g315b5f5/debian/changelog --- mumble-1.2.3-349-g315b5f5/debian/changelog 2012-10-14 18:37:03.000000000 +0200 +++ mumble-1.2.3-349-g315b5f5/debian/changelog 2012-11-10 02:06:26.000000000 +0100 @@ -1,3 +1,14 @@ +mumble (1.2.3-349-g315b5f5-2.2) UNRELEASED; urgency=low + + * Non-maintainer upload. + * Fix "Plugins: Failed to load libmumble.so: Cannot load library + /usr/lib/mumble/libmumble.so: (/usr/lib/mumble/libmumble.so: + undefined symbol: glPopClientAttrib)": + new patch 30-opengl: link libmumble against libGL + (Closes: #691535) + + -- gregor herrmann <[email protected]> Sat, 10 Nov 2012 02:02:10 +0100 + mumble (1.2.3-349-g315b5f5-2.1) unstable; urgency=low * Non-maintainer upload. diff -Nru mumble-1.2.3-349-g315b5f5/debian/patches/30-opengl mumble-1.2.3-349-g315b5f5/debian/patches/30-opengl --- mumble-1.2.3-349-g315b5f5/debian/patches/30-opengl 1970-01-01 01:00:00.000000000 +0100 +++ mumble-1.2.3-349-g315b5f5/debian/patches/30-opengl 2012-11-10 02:05:02.000000000 +0100 @@ -0,0 +1,11 @@ +--- a/overlay_gl/overlay_gl.pro ++++ b/overlay_gl/overlay_gl.pro +@@ -7,7 +7,7 @@ + TARGET = mumble$(TARGET_ADD) + VERSION = 1.2.4 + SOURCES = overlay.c +-LIBS *= -lrt -ldl ++LIBS *= -lrt -ldl -lGL + QMAKE_CFLAGS *= -fvisibility=hidden $(CFLAGS_ADD) + QMAKE_LFLAGS -= -Wl,--no-undefined + QMAKE_LFLAGS *= $(LFLAGS_ADD) diff -Nru mumble-1.2.3-349-g315b5f5/debian/patches/series mumble-1.2.3-349-g315b5f5/debian/patches/series --- mumble-1.2.3-349-g315b5f5/debian/patches/series 2012-10-14 18:36:54.000000000 +0200 +++ mumble-1.2.3-349-g315b5f5/debian/patches/series 2012-11-10 02:04:36.000000000 +0100 @@ -5,3 +5,4 @@ 15-fix-noise-in-opus-mode 20-add-opus-threshold-option 25-add-codec-warnings +30-opengl
signature.asc
Description: Digital signature

