1

I was developing a project that uses (among others) boost::filesystem under VS2010. Today I decided to switch to VS2012, upgraded the solution (just let the VS do it automatically) and when I tried to compile it seems all went fine except for 1 thing:

fatal error LNK1104: cannot open file 'libboost_filesystem-vc100-mt-gd-1_53.lib'

I keep boost in a separate folder (outside the project location), the paths seems to be correct (I have precompiled *.lib files of boost, both for VS2010 and VS2012). The error suggests the project looks for the old versions of libs (vc100 instead of vc110) but I have no idea how to change that.

NPS
  • 6,003
  • 11
  • 53
  • 90
  • 1
    Is the [platform toolset](http://blogs.msdn.com/b/vcblog/archive/2009/12/08/c-native-multi-targeting.aspx) set to `v110`? – Praetorian Jan 03 '14 at 00:42
  • ... No, it wasn't. I thought "solution upgrade" should take care of that but apparently I was wrong. Make this an answer and I'll accept it. – NPS Jan 03 '14 at 00:48
  • @NPS IIRC, when upgrading a solution VS pops up a dialog box asking whether you want the projects upgraded to the latest platform toolset. Maybe you dismissed the dialog accidentally. – Praetorian Jan 03 '14 at 01:06
  • @drescherjm No, it isn't. And, **as I said**, my library and include settings are correct. – NPS Jan 03 '14 at 01:24
  • @drescherjm I'm not sure what you are talking about, the problem is fixed, I didn't notice the `Platform Toolset` was set to `v100` instead of `v110`. – NPS Jan 03 '14 at 01:32
  • Sorry for the confusion. I misread and thought you were going the other way. – drescherjm Jan 03 '14 at 01:37

1 Answers1

4

Make sure the Platform Toolset option is set to v110. Right click on the project name and select Properties. Then under Configuration Properties -> General -> Platform Toolset select Visual Studio 2012 (v110).

Praetorian
  • 106,671
  • 19
  • 240
  • 328