building plugins on Win32 ?
gbazin at netcourrier.com
Sun May 27 18:49:19 CEST 2001
I wanted to add the possibility to build dll plugins for the VLC on Win32,
but I realized the Win32 DLL implementation lacks a really important
What I mean by back-linking is when the DLL tries to access symbols defined
in the main program (the one which is calling the DLL).
So, when I try to build dll plugins the compiler tells me that there are
undefined symbols like:
vout_sdl.o(.text+0x1c4):vout_sdl.c: undefined reference to
vout_sdl.o(.text+0x206):vout_sdl.c: undefined reference to `intf_ErrMsg'
vout_sdl.o(.text+0x225):vout_sdl.c: undefined reference to `p_main'
vout_sdl.o(.text+0x234):vout_sdl.c: undefined reference to `intf_AssignKey'
I can see only two solutions to this problem:
- Put the functions required by the plugins in another DLL (in that case we
can do the linking)
- Or do the run-time linking by hand, which means we would pass to the DLL
plugin (at run-time) a structure that contains the pointers to all the
I don't really like either of these solutions, mainly because it would
require a lot of modifications to the VLC code (even though some
functionnalities like the debug functions could be done as plugins).
I guess we can live with only builtin plugins, but dll plugins would be so
Does anybody have ideas or comments ?
Would the VLC team be ready to modify the plugins architecture just to
satisfy the needs of the Win32 port ? (I guess I already know the answer
More information about the vlc-devel