0
votes

I am trying to build a code in VS2012 Update 4. I need it in VS2012 as I am including a thread.h file which exists in VC11 onwards. So the dll is configured to use VS 2012 (v110) platform toolset. Instead of looking for vc110 version of the boost file VS is looking for lib files of version vc100 . And when I link to those vc100 lib files, it still gives the below error. I have done a clean and rebuild still I get this error.


error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1700' in client.obj


Used even vc110 boost files.

Toolset:

enter image description here

Libs:

enter image description here

Error:

enter image description here

What should I change to have this build error free?

Thanks for your help in advance.

2
You'll have to rebuild everything, including static libraries you link.Hans Passant
I have no other lib/dll included in the project. I have done a clean solution and rebuild everything. I even re-created the whole project. It is still asking for 'libboost_thread-vc100-mt-gd-1_42.lib'. My platform toolset is to v110.razzy

2 Answers

0
votes

You need to link VC110 boost library to your application. Convert boost library into VS2012(VC110)

0
votes

Boost library built for VS2010 cannot be used with VS2012. If you have have already built boost library for VS2012, you can specify the path to this library in your project: properties->Configuration->Linker->General. Also change the include directory path from properties->Configuration->C/C++->General. Otherwise you will have to build the library for VS2012 and use it.

Also make sure that path of boost library in properties->Configuration properties->VC++ Directories is the proper one.