Re: Exception handling and Windows



Yoann Le Montagner wrote:
> I've managed to get around my problem by building the gtkmm libraries by
> myself, with the latest version of the MinGW compiler.

That's exactly what I did a while back. One problem is the default
exception handling ABI in GCC, which changed from SJLJ to DW2 recently.
You can look for a libgcc*.dll in the Gtkmm binaries and compare with
the one in your MinGW build system. Newer MinGW versions ship
libgcc_s_dw2-1.dll, so you might end up dynamically linking to two
different libgcc DLLs.

See also: http://gcc.gnu.org/wiki/WindowsGCCImprovements

Another problem seems to be exceptions thrown in callback functions.
Since signal handlers are actually called from the Gtk C libraries, C++
exceptions are hard to get handed through these to e.g. the main
routine. There is a comment about this somewhere in the Gtkmm
documentation, just couldn't find a reference right now: "Always catch
your exceptions locally within the signal callback."

I figure quite some people will still get bitten by this
incompatibility, so I wanted to collect some facts I found. Anyone care
to extend the info in GNOME Live?
(https://live.gnome.org/gtkmm/MSWindows)

Regards,
André
-- 
Greetings...
From: Andre Colomb <acolomb schickhardt org>

Attachment: signature.asc
Description: OpenPGP digital signature



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]