[xsd-users] enumerations not exported in dll when
"generate-inline" enabled
Boris Kolpackov
boris at codesynthesis.com
Tue Mar 1 08:28:39 EST 2011
Hi Matt,
Matt Burnham <mburnham at gblsys.com> writes:
> The resulting class is put in a DLL and when I try and link an application
> with the DLL, I get the following link error:
> unresolved external symbol "public: static char const * const * const tmp::action::_xsd_action_literals_" (?_xsd_action_literals_ at action@tmp@@2QBQBDB)
Your DLL export file has the following definitions:
# ifdef MY_DLL_EXPORT
# define MY_DLL_DECL __declspec(dllexport)
# elif MY_DLL_IMPORT
# define MY_DLL_DECL __declspec(dllimport)
# else
# define MY_DLL_DECL // for static lib
# endif
In particular, it does not import things by default; one has to explicitly
define MY_DLL_IMPORT for that to happen. Naturally, your test does not define
this macro. If add it to the preprocessor definitions in its project file,
everything links fine.
Boris
More information about the xsd-users
mailing list