When I build C apps with mingwbuilds 4.8.1-win32-sjlj, the built artifacts have a runtime dependency on `libgcc_s_sjlj-1.dll`. This is not the case when I use the rubenvb toolchains.
My understanding is that the `libgcc_s_sjlj-1.dll` dependency is only required for C++, not C, apps due to exception handling support. As I don't spend much time with C++, I'd like to better understand the build and runtime tradeoffs with SJLJ. Specifically: 1) Is minimizing toolchain build complexity the main benefit of an extra SJLJ DLL dependency for C apps? 2) What toolchain build setting(s) allows rubenvb builds to *not* create the SJLJ DLL dependency for C apps? 3) When using the mingwbuilds toolchain, is there a gcc option (eg. -Wl,--static-sjlj-lib) to suppress the SJLJ DLL dependency? Something lovely like `-Wl,-Bstatic -lgcc_s_sjlj -Wl,-Bdynamic ...`? 4) What are the downsides of toolchains behaving like the rubenvb toolchains wrt SJLJ? 5) Any other important tradeoffs to be aware of? (no SEH vs Dwarf vs SJLJ discussion please ;)) Jon ------------------------------------------------------------------------------ See everything from the browser to the database with AppDynamics Get end-to-end visibility with application monitoring from AppDynamics Isolate bottlenecks and diagnose root cause in seconds. Start your free trial of AppDynamics Pro today! http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk _______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
