[vlc-devel] Re: problem with libmkv when compiling VLC.exe on WIN32

Sigmund Augdal sigmunau at stud.ntnu.no
Mon Sep 27 18:28:19 CEST 2004


I'm not sure of the details of which .c end up in which .o and .a, but the
libmp4.c file is still needed by the mkv demux.

Sigmund

On Mon, Sep 27, 2004 at 02:30:52PM +0100, Damien Fouilleul wrote:
> Sigmund,
> 
> you are right, after re-doing a bootstrap and the rest, everything 
> compiled and linked neatly,
> 
> however I've noticed that libmp4.c ended up in both libmkv_a-libmp4.o 
> and libmp4_plugin_a-libmp4.o, which are respectively linked in vlc.exe 
> and libmp4-plugin.dll. Hence,am i right to assume that assume libmp4.c 
> is no longer needed in the plugin ?
> 
> Damien
> 
> Sigmund Augdal wrote:
> 
> >You still get this if you run make clean and do a new bootstrap on a
> >unmodified svn tree? the dependency isn't on the libmp4 plugin, but on one
> >of the source files that also makes up the libmp4 plugin. These files are
> >allways available in the vlc source tree, so I see no problem using them.
> >
> >Sigmund Augdal
> >
> >On Mon, Sep 27, 2004 at 01:43:49PM +0100, Damien Fouilleul wrote:
> > 
> >
> >>Hi,
> >>
> >>I've noticed that libmvk.a had hard-dependencies on APIs in the 'libmp4' 
> >>plugin module, hence when I compile VLC.exe on Windows, I get the 
> >>following link errors:
> >>
> >>g++ -mno-cygwin -O2 -Wsign-compare -Wsign-compare -Wall -mms-bitfields 
> >>-pipe -L/usr/win32/lib -o vlc.exe src/vlc-vlc.o lib/libvlc.a 
> >>share/vlc_win32_rc.o ./modules/misc/memcpy/libmemcpymmx.a 
> >>./modules/video_chroma/libi420_rgb_mmx.a 
> >>./modules/video_chroma/libi422_yuy2_mmx.a 
> >>./modules/video_chroma/libi420_ymga_mmx.a 
> >>./modules/video_chroma/libi420_yuy2_mmx.a 
> >>./modules/misc/memcpy/libmemcpymmxext.a 
> >>./modules/misc/memcpy/libmemcpy3dn.a ./modules/demux/liblivedotcom.a 
> >>./modules/demux/libmkv.a ./modules/codec/ffmpeg/libffmpeg.a 
> >>-L/usr/local/lib -lkernel32 /usr/win32/lib/libiconv.a 
> >>/usr/win32/lib/libintl.a /usr/win32/lib/libiconv.a -lws2_32 -lnetapi32 
> >>-lwinmm -mwindows -L/usr/win32/lib 
> >>-L/usr/win32/live.com/UsageEnvironment -lUsageEnvironment 
> >>-L/usr/win32/live.com/groupsock -lgroupsock 
> >>-L/usr/win32/live.com/BasicUsageEnvironment -lBasicUsageEnvironment 
> >>-L/usr/win32/live.com/liveMedia -lliveMedia -lws2_32 -lz -lmatroska 
> >>-lebml -lavcodec -lz -lfaac -lmp3lame -lxml2
> >>./modules/demux/libmkv.a(libmkv_a-mkv.o)(.text+0x1d0e):mkv.cpp: 
> >>undefined reference to `_MP4_MemoryStream'
> >>./modules/demux/libmkv.a(libmkv_a-mkv.o)(.text+0x1d27):mkv.cpp: 
> >>undefined reference to `_MP4_ReadBoxCommon'
> >>./modules/demux/libmkv.a(libmkv_a-mkv.o)(.text+0x1d33):mkv.cpp: 
> >>undefined reference to `_MP4_ReadBox_sample_vide'
> >>./modules/demux/libmkv.a(libmkv_a-mkv.o)(.text+0x1dd2):mkv.cpp: 
> >>undefined reference to `_MP4_FreeBox_sample_vide'
> >>
> >>I've temporarily solved the problem by creating a WIN32 import lib for 
> >>libmp4 and use that when compiling VLC.exe, which change the hard 
> >>dependency to a soft one, but I don't think that this is a long term 
> >>solution, since in essence, plugins are 'optional' components and if 
> >>'libmp4_plugin.dll'  is not available, vlc.exe will bail out when it 
> >>calls those _MP4_ APIs.
> >>
> >>I believe an explicit 'LoadLibrary' mechanism should be devised before 
> >>using these APIs.
> >>
> >>Damien
> >>
> >>
> >>Subversion daemon wrote:
> >>
> >>   
> >>
> >>>r8795 | sigmunau | 2004-09-26 01:36:55 +0200 (Sun, 26 Sep 2004) | 4 lines
> >>>Changed paths:
> >>>M /trunk/modules/demux/Modules.am
> >>>M /trunk/modules/demux/mkv.cpp
> >>>M /trunk/modules/demux/mp4/libmp4.c
> >>>M /trunk/modules/demux/mp4/libmp4.h
> >>>
> >>>mkv.cpp: added support for quicktime video codecs in mkv (tested with 
> >>>svq3)
> >>>Modules.am: link mkv demux with mp4 demux
> >>>mp4/*: export some functions needed by mkv demux
> >>>
> >>>
> >>>
> >>>     
> >>>
> >>-- 
> >>This is the vlc-devel mailing-list, see http://www.videolan.org/vlc/
> >>To unsubscribe, please read http://developers.videolan.org/lists.html
> >>   
> >>
> >
> > 
> >
> 
> -- 
> This is the vlc-devel mailing-list, see http://www.videolan.org/vlc/
> To unsubscribe, please read http://developers.videolan.org/lists.html

-- 
This is the vlc-devel mailing-list, see http://www.videolan.org/vlc/
To unsubscribe, please read http://developers.videolan.org/lists.html



More information about the vlc-devel mailing list