Summary: | media-libs/mediastreamer-2.7.3-r1: undefined references in libmediastreamer | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Luigi 'Comio' Mantellini <luigi.mantellini+gentoo> |
Component: | [OLD] Library | Assignee: | Mounir Lamouri (volkmar) (RETIRED) <volkmar> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | Adrian.Bassett, ansla80, fabio.coatti, fcoiffie, lewis+gentoo, m.debruijne, petr.pisar, rose, ua0zeh, voip+disabled |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
kopete compilation fail
Compilation log of mediastreamer library Fix for mediastreamer / videoout.c refactoring |
Description
Luigi 'Comio' Mantellini
2011-04-10 16:09:40 UTC
Created attachment 269313 [details]
kopete compilation fail
Attach full build log of libmediastreamer and output of 'ldd -r' for libmediastreamer.so. *** Bug 362881 has been marked as a duplicate of this bug. *** These symbols are used into mediastreamer/src/videoout.c file. I don't know the last working ffmpeg libray... can you help me? Created attachment 269317 [details]
Compilation log of mediastreamer library
This is the output of ldd -r libmediastremer.so:
cassini files # ldd -r /usr/lib/libmediastreamer.so
linux-vdso.so.1 => (0x00007fffa8fff000)
libortp.so.8 => /usr/lib64/libortp.so.8 (0x00007fae32315000)
libportaudio.so.2 => /usr/lib64/libportaudio.so.2 (0x00007fae320ec000)
libasound.so.2 => /usr/lib64/libasound.so.2 (0x00007fae31e0c000)
libpulse.so.0 => /usr/lib64/libpulse.so.0 (0x00007fae31bc8000)
libspeex.so.1 => /usr/lib64/libspeex.so.1 (0x00007fae319ae000)
libspeexdsp.so.1 => /usr/lib64/libspeexdsp.so.1 (0x00007fae3179a000)
libgsm.so.1 => /usr/lib64/libgsm.so.1 (0x00007fae3158e000)
libv4l2.so.0 => /usr/lib64/libv4l2.so.0 (0x00007fae31383000)
libavcodec.so.52 => /usr/lib64/libavcodec.so.52 (0x00007fae3073d000)
libavutil.so.50 => /usr/lib64/libavutil.so.50 (0x00007fae30524000)
libswscale.so.0 => /usr/lib64/libswscale.so.0 (0x00007fae302ec000)
libSDL-1.2.so.0 => /usr/lib64/libSDL-1.2.so.0 (0x00007fae30088000)
libtheora.so.0 => /usr/lib64/libtheora.so.0 (0x00007fae2fe54000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fae2fc37000)
librt.so.1 => /lib64/librt.so.1 (0x00007fae2fa2d000)
libXv.so.1 => /usr/lib64/libXv.so.1 (0x00007fae2f827000)
libXext.so.6 => /usr/lib64/libXext.so.6 (0x00007fae2f614000)
libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007fae2f2d1000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fae2f0cd000)
libm.so.6 => /lib64/libm.so.6 (0x00007fae2ee4b000)
libc.so.6 => /lib64/libc.so.6 (0x00007fae2eabf000)
libssl.so.1.0.0 => /usr/lib64/libssl.so.1.0.0 (0x00007fae2e862000)
libcrypto.so.1.0.0 => /usr/lib64/libcrypto.so.1.0.0 (0x00007fae2e4b1000)
libjack.so.0 => /usr/lib64/libjack.so.0 (0x00007fae2e292000)
libpulsecommon-0.9.22.so => /usr/lib64/libpulsecommon-0.9.22.so (0x00007fae2e040000)
libX11-xcb.so.1 => /usr/lib64/libX11-xcb.so.1 (0x00007fae2de3e000)
libSM.so.6 => /usr/lib64/libSM.so.6 (0x00007fae2dc34000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007fae2da2f000)
libICE.so.6 => /usr/lib64/libICE.so.6 (0x00007fae2d813000)
libXtst.so.6 => /usr/lib64/libXtst.so.6 (0x00007fae2d60b000)
libXi.so.6 => /usr/lib64/libXi.so.6 (0x00007fae2d3fb000)
libxcb-atom.so.1 => /usr/lib64/libxcb-atom.so.1 (0x00007fae2d1f6000)
libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007fae2cfd7000)
libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007fae2cdd3000)
libXdmcp.so.6 => /usr/lib64/libXdmcp.so.6 (0x00007fae2cbcd000)
libwrap.so.0 => /lib64/libwrap.so.0 (0x00007fae2c9c3000)
libsndfile.so.1 => /usr/lib64/libsndfile.so.1 (0x00007fae2c75b000)
libFLAC.so.8 => /usr/lib64/libFLAC.so.8 (0x00007fae2c521000)
libvorbisenc.so.2 => /usr/lib64/libvorbisenc.so.2 (0x00007fae2c051000)
libvorbis.so.0 => /usr/lib64/libvorbis.so.0 (0x00007fae2be25000)
libogg.so.0 => /usr/lib64/libogg.so.0 (0x00007fae2bc1e000)
libasyncns.so.0 => /usr/lib64/libasyncns.so.0 (0x00007fae2ba18000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007fae2b800000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fae2b5e9000)
libdbus-1.so.3 => /usr/lib64/libdbus-1.so.3 (0x00007fae2b3a2000)
libgdbm.so.3 => /usr/lib64/libgdbm.so.3 (0x00007fae2b19c000)
libcap.so.2 => /lib64/libcap.so.2 (0x00007fae2af96000)
libv4lconvert.so.0 => /usr/lib64/libv4lconvert.so.0 (0x00007fae2ad22000)
libavcore.so.0 => /usr/lib64/libavcore.so.0 (0x00007fae2ab1c000)
libxvidcore.so.4 => /usr/lib64/libxvidcore.so.4 (0x00007fae2a800000)
libx264.so.114 => /usr/lib64/libx264.so.114 (0x00007fae2a554000)
libtheoraenc.so.1 => /usr/lib64/libtheoraenc.so.1 (0x00007fae2a327000)
libtheoradec.so.1 => /usr/lib64/libtheoradec.so.1 (0x00007fae2a116000)
libschroedinger-1.0.so.0 => /usr/lib64/libschroedinger-1.0.so.0 (0x00007fae29e6a000)
libopenjpeg.so.1.4 => /usr/lib64/libopenjpeg.so.1.4 (0x00007fae29c4a000)
libopencore-amrwb.so.0 => /usr/lib64/libopencore-amrwb.so.0 (0x00007fae29a32000)
libopencore-amrnb.so.0 => /usr/lib64/libopencore-amrnb.so.0 (0x00007fae29801000)
libmp3lame.so.0 => /usr/lib64/libmp3lame.so.0 (0x00007fae29585000)
libdirac_encoder.so.0 => /usr/lib64/libdirac_encoder.so.0 (0x00007fae292ec000)
libva-0.32.0.2.so.1 => /usr/lib64/libva-0.32.0.2.so.1 (0x00007fae290bc000)
libz.so.1 => /lib64/libz.so.1 (0x00007fae28ea4000)
/lib64/ld-linux-x86-64.so.2 (0x00007fae327ba000)
libattr.so.1 => /lib64/libattr.so.1 (0x00007fae28c9e000)
liborc-0.4.so.0 => /usr/lib64/liborc-0.4.so.0 (0x00007fae28a23000)
libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6 (0x00007fae2871a000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fae28503000)
undefined symbol: ms_sws_freeContext (/usr/lib/libmediastreamer.so)
undefined symbol: ms_sws_scale (/usr/lib/libmediastreamer.so)
undefined symbol: ms_sws_getContext (/usr/lib/libmediastreamer.so)
Seems that this is actually an upstream bug as none of those functions seem defined in the sources. I will try to analyze the git log of linphone... stay tuned. (In reply to comment #7) > I will try to analyze the git log of linphone... stay tuned. Find my comments: * This commit remove some definition: commit 57bde1a2911395eccfa985bc29386738a3e1e7a0 revisit scaler wrapper in mediastreamer2 Author Simon Morlat<simon.morlat@linphone.org> Author date 1 Dec 2010 23:18:10 Parent improve x11video to adapt to small sizes. Child Merge branch 'dev_android_video' of git.linphone.org:medi... Branch master (add config.rpath) Branch origin/master (add config.rpath) Precedes 2.7.0 (update news) revisit scaler wrapper in mediastreamer2 General rules for the patch: ms_sws_freeContext() -> ms_scaler_context() ms_sws_getContext() -> ms_scaler_create_context() ms_sws_scale() -> ms_scaler_process() struct ms_SwsContext -> MSScalerContext I hope to be useful ciao luigi I'm trying to write a patch to videoout.c. Give me time. ciao Created attachment 269363 [details, diff]
Fix for mediastreamer / videoout.c refactoring
This patch should solve the issue.
please add also a epatch "blablabla" in your ebuild.
ciao
luigi
Thank you Luigi! Actually I'm unsure about this patch since in mentioned commit some substitutions are: - ms_sws_freeContext(s->sws_ctx); + sws_freeContext(s->sws_ctx); s->sws_ctx=NULL; while others are: - ms_sws_freeContext(s->sws_ctx); + ms_scaler_context_free(s->sws_ctx); s->sws_ctx=NULL; I have no time to dig this further so I've contacted upstream on this issue. From src/msvideo.c, it results that ms_scaler_* should be better that the direct sws_* calls. I can be wrong... of course. ciao luigi Thank you, Luigi. I've backported upstream patch and now issue should be fixed. *** Bug 363173 has been marked as a duplicate of this bug. *** You should rev-bump it to correctly fix this, as it's still broken for anyone that installed media-libs/mediastreamer-2.7.3-r1 before you commited the fix. (In reply to comment #15) > You should rev-bump it to correctly fix this, as it's still broken for anyone > that installed media-libs/mediastreamer-2.7.3-r1 before you commited the fix. Done. Thanks. |