【问题标题】:VS12 Buiding Boost Library fatal error LNK1104: cannot open file 'libboost_system-vc110-mt-gd-1_58.lib'VS12 Buiding Boost Library致命错误LNK1104:无法打开文件'libboost_system-vc110-mt-gd-1_58.lib'
【发布时间】:2015-09-17 06:20:29
【问题描述】:
我一直在尝试为 Visual Studio 2012 构建 boost:asio。
我已经做了 bjam,它给了我包含和 lib 地址,我粘贴在 VS 设置中。
现在编译器找不到'libboost_system-vc110-mt-gd-1_58.lib',但是在阶段lib我得到了'libboost_system-vc120-mt-gd-1_58.lib',这可能是一个更新的版本。
我该如何解决这个问题?
我搜索了几天,无法通过它。
【问题讨论】:
标签:
c++
visual-studio-2012
boost
boost-asio
【解决方案1】:
看起来您正在使用 VisualStudio 2012(正在请求 vc110 版本库),但实际上您已经为 Visual Studio 2013 (vc120) 构建了增强版。
您需要指定正确的工具集来提升构建 (--toolset=msvc-11.0),而不是让他选择默认值。
【解决方案2】:
您使用的是旧版本的 boost 吗?
确保您的版本不早于对 VS2012 的支持。检测版本的机制在 bjam 和自动链接标头中是不同的,因此对于最新版本的 Visual Studio,您最终可能会尝试链接到已知的最新版本 boost“vc110”,即使 bjam 检测正确。