Compiling a MFC app from Visual Studio 2010 to 2012 RC results in LNK2038

10,810

Solution 1

Looks like you're using a .lib from vc2010 in vc2012 (at a guess it looks like a PCRE library). You'll need to recompile all your .libs or run-time link with the DLLs (ie LoadLibrary, GetProcAddress etc.).

Solution 2

In Project Properties, select General and then change the "Platform Toolset" setting to "Visual Studio 2010 (v100)." After I did that, my code compiled fine with the original libraries.

Solution 3

Looking it up at http://msdn.microsoft.com/en-us/library/b0084kay.aspx It seems that variable holds the compiler's version number. I would think the best way to fix it would be to create a new project in 2012 and add the source files to the new project.

Share:
10,810
Wartin
Author by

Wartin

Updated on June 17, 2022

Comments

  • Wartin
    Wartin almost 2 years

    My project is compiling and running OK in debug and release modes in VS 2010. Today I tried to compile it with VS 2012 and I got this error :

    1>  Generating Code...
    1>pcrecppd.lib(pcrecpp.obj) : error LNK2038: mismatch detected for '_MSC_VER': 
    value '1600' doesn't match value '1700' in NamesEditorDlg.obj
    

    I searched for "_MSC_VER" in the code but I could not find any match. Neither could I find "1600" or "1700".

    So I am wondering how I can solve this problem.