Instead of using 'extern "C"' and getting a warning, I found out that moving
the plugin structure out of the 'avm' namespace works. using namespace avm'
is needed for the functions calls and 'codec_plugin_t'.
So change something like the following:
...<snip>...
codec_plugin_t avm_codec_plugin_win32 =
{
...<snip>...
};
AVM_END_NAMESPACE;
to this:
...<snip>...
AVM_END_NAMESPACE;
using namespace avm;
codec_plugin_t avm_codec_plugin_win32 =
{
...<snip>...
};
The problem is that c++ mangles the names of class members in the executable
(at least, that's what i've read). Since the avm_codec_plugin_* structures
are within the 'avm' namespace, the avm_codec_plugin_* names get mangled.
dlsym is looking for a 'avm_codec_plugin_' symbol, but the actual symbol in
the binary is similar to 'avm23zavm_codec_plugin_'.
Tim
_________________________________________________________________
Join the world�s largest e-mail service with MSN Hotmail.
http://www.hotmail.com
_______________________________________________
Avifile mailing list
[EMAIL PROTECTED]
http://prak.org/mailman/listinfo/avifile