|
From: | Alois Schlögl |
Subject: | Re: [Mingw-cross-env-list] gcc: why disable sjlj ? |
Date: | Thu, 05 May 2011 15:52:40 +0200 |
User-agent: | Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.16) Gecko/20110307 Iceowl/1.0b1 Icedove/3.0.11 |
The problem is solved. The problem was a broken Makefile in my own project. Sorry for the noise. AloisP.S. Yes, I've built from scratch (fresh clone of the mce repository) the packages that are needed.
On 05/05/11 13:30, Volker Grabsch wrote:
Alois Schlögl schrieb:I've problems compiling biosig with the recent version of gcc (specifically, tinyxml is used for reading some xml files), causing these error messages: win32/libbiosig.a(tinyxml.obj):tinyxml.cpp:(.text+0x4797): undefined reference to `___gxx_personality_sj0' win32/libbiosig.a(tinyxml.obj):tinyxml.cpp:(.text+0x47b0): undefined reference to `__Unwind_SjLj_Register' win32/libbiosig.a(tinyxml.obj):tinyxml.cpp:(.text+0x4860): undefined reference to `__Unwind_SjLj_Unregister' win32/libbiosig.a(tinyxml.obj):tinyxml.cpp:(.text+0x48a4): undefined reference to `__Unwind_SjLj_Resume'Has the whole library been built with exactly the same GCC?
That kind of SJLJ code shouldn't have been generated in the first place. It seems that one part of your code was compiled with the "old" GCC (without "--disable-sjlj-exceptions") and another part with the "new" GCC (with "--disable-sjlj-exceptions").The problem goes away when --disable-sjlj-exceptions \ is removed from gcc.mk, and mingw-cross-env is rebuilt. I know that the change was introduced here http://hg.savannah.gnu.org/hgweb/mingw-cross-env/rev/9e757634e635 with the comment "disable SJLJ exceptions explicitly, as those cause trouble".This comment refers to the following mailing list posting: http://lists.nongnu.org/archive/html/mingw-cross-env-list/2011-04/msg00014.html Please have a look at the surrounding thread, too.
Greets, Volker
[Prev in Thread] | Current Thread | [Next in Thread] |