   msvcp71.dll
  Why do my programs require this file? How can I make it not link to this.   
  In Project properties under Compiler settings there is Code Generation option. Change it to something that has no DLL in its name.This file has has C++ runtime (like string, vector, iostream) code. If you will not use it, then all code will be linked as static library and your executable size will be bigger.   ;  That gave me a whole bunch of linking errors.LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) already defined in LIBCMT.lib(typinfo.obj)LNK2005: "private: class type_info & __thiscall type_info::operator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) already defined in LIBCMT.lib(typinfo.obj)LNK2005: __isctype already defined in LIBCMT.lib(isctype.obj)those and a bunch more all LNK2005;  If I used a different compiler like MinGW or somthing would that solve my problem?   ;  Anyone?   ;  Why don't you try it?I believe it would solve your problem, as MinGW statically links in the C runtime by default (that's why people complain about their .exe file being so big).That said however, it is not a very good reason to switch compilers. You should figure out what is going wrong.   ;  You have picked conflicting runtime libraries.   ;  AFAIK, there's no way of getting around having to ship some of the Microsoft runtime dll's when you compile your app with any MSVC compiler, no matter which compiler settings you use.If you are using msvc 8 however, you shouldn't get this error, as it points out that it is ooking for functions of a msvc 7.1 dll. In that case you are most likely linking another library to your project that was compiled with msvc 7.1. Try to recompile this with msvc 8, and at least this error should go away, even though msvc 8 will require other dll's that you then have to provide.I have done some research on that some month ago and found no solution. If anybody knows one, I'd be happy to hear about it.Hope that helps.   