From: Kevin K. <kev...@ch...> - 2006-09-24 07:51:54
|
> > * There's an issue with export?.h Romain, I'd like to discuss the proper > > it should have been fixed. I have compiled all stuffs with -fno-common and > there were no errors. Well, this (almost certainly) fixes the link failure on OS X, but there is still a problem: There's still only one TIEXPORT macro, controlled by all for TI*_EXPORT defines. This means that where e.g. libticalcs2 uses a function from libticables2, that function is declared as dllexport instead of dllimport. I wonder how and why this works, because it is clearly wrong. There needs to be a different export macro for each library, i.e.: #ifdef TICABLES_EXPORT #define TICABLESEXPORT __declspec(dllexport) #else #define TICABLESEXPORT __declspec(dllimport) #endif and then use TICABLESEXPORT instead of TIEXPORT throughout libticables2 (yes, this needs a global replace in each library). Also, where are these TI*_EXPORT defined? In the M$VC projects only? These need to be defined from configure.ac too! Taking this into account, it is a miracle that this works at all on Win32. Kevin Kofler |