Bug#404113: linphonec segfaults without framebuffer
Joey Korkames
joey at llnw.com
Wed Jan 30 00:05:45 UTC 2008
Looking at the linphone source package (unstable - v2.0.1), it appears that the
linphone2-nox package is merely all the non-graphical bits of a normal
x11/sdl/directfb build of linphone rather than a separate, stripped down
build of the entire linphone suite. So it is "lazy linking".
joey:~$ ldd `which linphonec`
linux-gate.so.1 => (0xffffe000)
liblinphone.so.1 => /usr/lib/liblinphone.so.1 (0xb7f26000)
libreadline.so.5 => /lib/libreadline.so.5 (0xb7ef6000)
libncurses.so.5 => /lib/libncurses.so.5 (0xb7eb4000)
libc.so.6 => /lib/tls/libc.so.6 (0xb7d82000)
libmediastreamer.so.0 => /usr/lib/libmediastreamer.so.0 (0xb7d4f000)
libortp.so.5 => /usr/lib/libortp.so.5 (0xb7d3a000)
libquickstream.so.0 => /usr/lib/libquickstream.so.0 (0xb7d35000)
libosip2.so.3 => /usr/lib/libosip2.so.3 (0xb7d1e000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0xb7d0b000)
libosipparser2.so.3 => /usr/lib/libosipparser2.so.3 (0xb7ce0000)
libnsl.so.1 => /lib/tls/libnsl.so.1 (0xb7cca000)
librt.so.1 => /lib/tls/librt.so.1 (0xb7cc2000)
libdl.so.2 => /lib/tls/libdl.so.2 (0xb7cbe000)
/lib/ld-linux.so.2 (0xb7f6c000)
libasound.so.2 => /usr/lib/libasound.so.2 (0xb7bfc000)
libartsc.so.0 => /usr/lib/libartsc.so.0 (0xb7bf6000)
libspeex.so.1 => /usr/lib/libspeex.so.1 (0xb7bd6000)
libtheora.so.0 => /usr/lib/libtheora.so.0 (0xb7b9d000)
libz.so.1 => /usr/lib/libz.so.1 (0xb7b89000)
liba52-0.7.4.so => /usr/lib/liba52-0.7.4.so (0xb7b7e000)
libgsm.so.1 => /usr/lib/libgsm.so.1 (0xb7b6e000)
libdc1394_control.so.13 => /usr/lib/libdc1394_control.so.13
(0xb7b5f000)
libvorbisenc.so.2 => /usr/lib/libvorbisenc.so.2 (0xb7a63000)
libraw1394.so.8 => /usr/lib/libraw1394.so.8 (0xb7a5d000)
libavutil.so.0d => /usr/lib/libavutil.so.0d (0xb7a57000)
libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0xb7a2f000)
libm.so.6 => /lib/tls/libm.so.6 (0xb7a0a000)
libogg.so.0 => /usr/lib/libogg.so.0 (0xb7a04000)
libSDL-1.2.so.0 => /usr/lib/libSDL-1.2.so.0 (0xb7953000)
libavcodec.so.0d => /usr/lib/libavcodec.so.0d (0xb74da000)
libdirectfb-0.9.so.25 => /usr/lib/libdirectfb-0.9.so.25 (0xb7483000)
libfusion-0.9.so.25 => /usr/lib/libfusion-0.9.so.25 (0xb747c000)
libdirect-0.9.so.25 => /usr/lib/libdirect-0.9.so.25 (0xb746d000)
libvga.so.1 => /usr/lib/libvga.so.1 (0xb740d000)
Fixing this would require rejigging debian/rules to make a second-pass build
of linphone with nox-appropriate flags to ./configure....
new configure invocation:
--prefix=/usr
--mandir=\$${prefix}/share/man
--infodir=\$${prefix}/share/info
--disable-strict
--disable-static
--sysconfdir=/etc
--with-osip=/usr
--with-speex=/usr
--enable-ipv6
--disable-video
--disable-artsc
--enable-gtk_ui=no
smaller list of dependencies for debian/control:
pkg-config libosip2-dev libexosip2-dev libasound2-dev
libjack0.100.0-dev libspeex-dev libsamplerate0-dev libxml-parser-perl
docbook-utils libvorbis-dev libreadline5-dev doxygen
Now it looks like this....
joey:~/linphone-2.0.1$ LD_LIBRARY_PATH="$LD_LIBRARY_PATH:./oRTP/src/.libs:./mediastreamer2/src/.libs:./coreapi/.libs" ldd console/.libs/linphonec
linux-gate.so.1 => (0xffffe000)
liblinphone.so.2 => ./coreapi/.libs/liblinphone.so.2 (0xf7fc8000)
libreadline.so.5 => /lib/libreadline.so.5 (0xf7f92000)
libncurses.so.5 => /lib/libncurses.so.5 (0xf7f51000)
libosipparser2.so.2 => /usr/lib/libosipparser2.so.2 (0xf7f2a000)
libc.so.6 => /lib/tls/libc.so.6 (0xf7df8000)
libmediastreamer.so.0 => ./mediastreamer2/src/.libs/libmediastreamer.so.0 (0xf7de3000)
libortp.so.7 => ./oRTP/src/.libs/libortp.so.7 (0xf7dc8000)
libeXosip2.so.4 => /usr/lib/libeXosip2.so.4 (0xf7d8d000)
libosip2.so.2 => /usr/lib/libosip2.so.2 (0xf7d7b000)
libdl.so.2 => /lib/tls/libdl.so.2 (0xf7d77000)
/lib/ld-linux.so.2 (0xf7fe7000)
libasound.so.2 => /usr/lib/libasound.so.2 (0xf7cb5000)
libspeex.so.1 => /usr/lib/libspeex.so.1 (0xf7c95000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0xf7c83000)
librt.so.1 => /lib/tls/librt.so.1 (0xf7c7b000)
libm.so.6 => /lib/tls/libm.so.6 (0xf7c56000)
libnsl.so.1 => /lib/tls/libnsl.so.1 (0xf7c40000)
libresolv.so.2 => /lib/tls/libresolv.so.2 (0xf7c2c000)
joey:~/linphone-2.0.1$ LD_LIBRARY_PATH="$LD_LIBRARY_PATH:./oRTP/src/.libs:./mediastreamer2/src/.libs:./coreapi/.libs" console/.libs/linphonec
Ready
Warning: video is disabled in linphonec.
linphonec> quit
Terminating...
No active call.
joey:~/linphone-2.0.1$
More information about the Pkg-voip-maintainers
mailing list