how Visual Studio .NET 2003 – Ignore Specific Library for libcmt vs libcmtd
I have a template VS .NET 2003 project, which colleagues copy and customise when developing their software.
It appears the template was altered a while back to set the IgnoreSpecificLibrary property to have libcmt.lib for both release and debug builds (i.e. for both release and debug, the build should ignore libcmt.lib in the linker).
Some projects based on this have since been built, with the release build pulling in libcmtd.lib (evident by looking through the project .map file) which appears to have caused some runtime issues (i.e. a dialog window being flashed up as though a breakpoint had been set).
Does setting IgnoreSpecificLibrary to exclude libcmt.lib automatically make the project link against libcmtd.lib?
What is weird is that building the template (with the incorrect setting) links against libcmt.lib whereas some of the customised projects (though not all) link against libcmtd.lib.
This is what happened:
After compiling the linker takes your object-files and create among others
If you hadn’t ignored libcmt.lib those symbols would most likely be resolved
You may try to igmore libcmtd.lib also. If you now get unresolvd externals then