C++ 如何指定要链接到哪个版本的boost库?

C++ 如何指定要链接到哪个版本的boost库?,c++,boost,linker-errors,visual-studio-2013,C++,Boost,Linker Errors,Visual Studio 2013,我正在尝试将一个用VS2012编写的项目迁移到VS2013 我成功地编译了Boost1.53.0(我第一次尝试了1.54.0,但出现了一些编译器错误),得到了如下库 libboost\u filesystem-vc120-mt-1\u 53.lib 但当试图构建我的项目时,链接器抱怨: error LNK1104: cannot open file 'libboost_filesystem-vc110-mt-1_53.lib' 我一直在我的整个解决方案中寻找一些项目设置,以找出为什么它试图加载

我正在尝试将一个用VS2012编写的项目迁移到VS2013

我成功地编译了Boost1.53.0(我第一次尝试了1.54.0,但出现了一些编译器错误),得到了如下库
libboost\u filesystem-vc120-mt-1\u 53.lib

但当试图构建我的项目时,链接器抱怨:

error LNK1104: cannot open file 'libboost_filesystem-vc110-mt-1_53.lib'
我一直在我的整个解决方案中寻找一些项目设置,以找出为什么它试图加载较旧的库版本,但我没有找到任何东西

链接器如何知道要使用哪个库?
我该如何解决我的问题呢?

我在Arttrooper对该线程的回答中找到了问题的答案和问题的解决方案:

链接器确实知道要使用哪个库,因为它是在boost/config/auto_link.hpp中指定的

此文件缺少处理vc120版本的几行代码:

#  elif defined(BOOST_MSVC) && (BOOST_MSVC < 1800)

     // vc11:
#    define BOOST_LIB_TOOLSET "vc110"

#  elif defined(BOOST_MSVC)

     // vc12:
#    define BOOST_LIB_TOOLSET "vc120"
#elif定义(BOOST_MSVC)和&(BOOST_MSVC<1800)
//vc11:
#定义BOOST_LIB_工具集“vc110”
#定义的elif(BOOST_MSVC)
//vc12:
#定义BOOST_LIB_工具集“vc120”

现在它编译和链接很好

“链接器抱怨”--我们可能需要看到一些错误消息。@JohnDibling:我编辑了我的问题这正是我的问题。为什么它在寻找vc110版本而不是vc120?啊哈,我现在明白了。是的,请看@MartinBeckett的答案。@johndilling:不,我已经制作了vc120版本。但是链接器正在寻找一个旧版本,我不知道为什么。我从未指定要使用哪个库。它只是工作到现在,我不知道链接器以前如何知道该使用哪个库。好的地方,报告给boost bug列表