Are C++ libs created with different versions of Visual Studio compatible with each other?

Not normally, no. Libraries built with the VS tools are linked into the ‘Microsoft C Runtime’ (called MSVCRT followed by a version number) which provides C and C++ standard library functions, and if you attempt to run a program that requires two different versions of this runtime then errors will occur.

On top of this, different compiler versions churn out different compiled code and the code from one compiler version frequently isn’t compatible with another apart from in the most trivial cases (and if they churned out the same code then there would be no point having different versions :))

Leave a Comment