A windows application I've been working on, is due to delivred without the use of CRT.
There's a few good articles descirbing the guidlines and benefits of doing so (none of which I could find upon writing this question - sorry) . Other then not using CRT symbols explicitly, it's all about linker and compailer configuration. My Release and Debug configurations are nearly identical now , and both specify /NODEFAULTLIB:"LIBCMT"
only diffrence is the Run time flag /MT
(in Release) vs. /MTd
(in Debug) - that is required as I'm using __try/__except
syntax for SEH
, and so the only needed function is _except_handler3()
. However, the Debug version is beeing built successfully, and the Release version fail with Unresolved Symbol _except_handler3
linkage error. When forcing Release version to compile with /MTd
- this issue is solved.
How is that possible? which .lib
contains the _except_handler3 export? and how can I solve this?