more of an aspiration than a claim

Error LNK2005: already defined in LIBCMT.lib

If you get a link error like error LNK2005: _free already defined in LIBCMT.lib it is probably related to your library type.

Make sure you are using the same library types, eg all Release, or all Debug builds.

Make sure your run-time library threading compartments are of the same type for libraries you are linking.