DWARF-2 vs SjLj exception handling - poco compilation problem mingw - fedora10

Farkas Levente lfarkas at lfarkas.org
Fri Nov 14 11:34:50 UTC 2008


Richard W.M. Jones wrote:
> On Fri, Nov 14, 2008 at 01:03:28AM +0100, Andrzej Horoszczak IDRA wrote:
>> My problems is that other libraries (like boost) that have been used in
>> my target application were unfortunately built with DW2 exception
>> handling:
>> c:\mingw\lib/libboost_filesystem.a(operations.o):operations.cpp:(.text
>> 0x887): undefined reference to `__Unwind_Resume'
> 
> libboost_filesystem.a isn't a file that we ship.  Our version of boost
> has libboost_filesystem.dll.a and libboost_filesystem.dll, using SJLJ
> unwinding:
> 
> $ i686-pc-mingw32-nm /usr/i686-pc-mingw32/sys-root/mingw/bin/libboost_filesystem.dll | grep -i unwind.*resume
> 10009d60 T __Unwind_SjLj_Resume
> 10009cb0 T __Unwind_SjLj_Resume_or_Rethrow
> 
> It seems that there isn't a stable C++ ABI on Windows, so if you mix
> DLLs from different places you'll get unpredictable results.

that's the main problem. until there will ba a stable (and standard) c++
abi on windows you can't do anything just use the same compiler for all
of you c++ dll. so either use our mingw32 or the other c compiler use
for boost.

-- 
  Levente                               "Si vis pacem para bellum!"



More information about the mingw mailing list