http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43601
--- Comment #61 from Dave Korn <davek at gcc dot gnu.org> 2011-04-21 00:40:17 UTC --- (In reply to comment #59) > I review the patch, and found that we can add "-fno-keep-inline-dllexport" to > the compiler option, and then, the compiler and linker stage works well. But > the wxWidgets release mono dll's size is so large.(about 17M) In newer versions of GCC there is also a lot more debug info and Dwarf-2 exception table data that didn't used to be there. Stripping the dll and/or building a compiler with SJLJ rather than dwarf exceptions might help, although SJLJ trades off executable size for slower runtime. (Badly; dwarf exceptions only take CPU time when one is actually thrown, whereas SJLJ exceptions take CPU time every time you enter or exit a try block. Since exceptions are meant to be exceptional conditions that only happen occasionally, this tradeoff is probably worthwhile on desktop platforms where memory is not in short supply, but SJLJ might still be better on embedded platforms where memory is so critical that slower runtime performance might be the preferable option.)