title: Visual Studio 2015: v120 vs v140?
body: <p>FYI: Win10, x64</p>
  
  <p>I started trying out Visual Studio 2015 today, and after figuring out how to get the C/C++ parts running I tried to load up a big personal project that uses the <a href="http://glsdk.sourceforge.net/docs/html/index.html" rel="noreferrer">unofficial glsdk</a>.  I tried to build and got linker errors.  It complained about unresolved external symbols being referenced in freeglutD.lib, glloadD.lib, and glutil.lib.  It also complained about _MSC_VER mismatches in my own files.  </p>
  
  <p>I did some research online, messed around with 2013 and compiler versions (project properties -> General -> Platform Toolset)) - v120 for 2013 and v140 for 2015 - and was able to rebuild glsdk with v140 (excluding glmesh due to a missing file).  Then...it worked fine.</p>
  
  <p><strong>Question:</strong> Why is this?  I thought that a static lib file created by a standard-compliant compiler would work with other versions of a standard-compliant compiler (in this case, C/C++ on v120 and C/C++ on v140).  But apparently v140 would not play ball with libraries made by a previous compiler.</p>
  
  <p>If this is just the dark lands of VS build routines, then I can drop the question, but I'd also like to know why they don't work together.</p>