[vlc-devel] Build 0.9 undefined symbol

hce webmail.hce at gmail.com
Sat Aug 23 02:45:18 CEST 2008


Hi,

I've tried to build 0.9 in three linux machines, Debian, FC7 and
CentOS 5.2, the building processes were fine, but vlc could not play
due to some modules could not been loaded of following undefined
symbol:

[00000001] main libvlc warning: cannot load module
`/home/project/work/project/MediaPlayer/0.9/Install/lib/vlc/codec/libavcodec_plugin.so'
(/home/project/work/project/MediaPlayer/0.9/Install/lib/vlc/codec/libavcodec_plugin.so:
undefined symbol: uncompress)
[00000001] main libvlc warning: cannot load module
`/home/project/work/project/MediaPlayer/0.9/Install/lib/vlc/demux/libavformat_plugin.so'
(/home/project/work/project/MediaPlayer/0.9/Install/lib/vlc/demux/libavformat_plugin.so:
undefined symbol: avcodec_init)
[00000001] main libvlc warning: cannot load module
`/home/project/work/project/MediaPlayer/0.9/Install/lib/vlc/video_filter/libswscale_plugin.so'
(/home/project/work/project/MediaPlayer/0.9/Install/lib/vlc/video_filter/libswscale_plugin.so:
undefined symbol: av_freep)

I had a look at the problem, for example, the one of undefined symbol:
av_freep in libswscale_plugin.so was indeed in my FFMPEG libavutil.a.
I dumped both libswscale_plugin.so and libavcodec_plugin.so, the
av_freep in libavcodec_plugin.so was linked fine, but in
libswscale_plugin.so was not been linked resulted undefined symbol.

The difference between ibavcodec_plugin.so and libswscale_plugin.so
was the former was compiled and linked by -lavutil in
libswscale_plugin.la, but the later was not. I added -lavutil to
libswscale_plugin.la, but it didn't recompile the
libswscale_plugin.so.

Having said that I am new to VLC and I would like to participate more
in VLC development, at least at this stage I can help to build and
test VLC. Please correct me if I looked at a wrong place for this
problem, or if I missed some configurations on building VLC which
might cause the problem.

Was it a right way to change libswscale_plugin.la to link
libswscale_plugin.so to -lavutil? If it was,  how can I force the
libswscale_plugin.so be re-compiled in make command? Or please point
me a correct way to fix it.

Thank you.

Jim



More information about the vlc-devel mailing list