【问题标题】: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),而不是让他选择默认值。

【讨论】:

  • 没有--,因为toolset 是一个feature 名称,而不是一个option 名称(整个构造指定一个属性)。 A link to the docs 可能会派上用场。
  • 谢谢 Marom,事情就是这样。
【解决方案2】:

您使用的是旧版本的 boost 吗?

确保您的版本不早于对 VS2012 的支持。检测版本的机制在 bjam 和自动链接标头中是不同的,因此对于最新版本的 Visual Studio,您最终可能会尝试链接到已知的最新版本 boost“vc110”,即使 bjam 检测正确。

【讨论】:

    猜你喜欢
    • 2012-10-14
    • 2011-02-22
    • 2011-06-14
    • 2013-05-15
    • 1970-01-01
    • 2017-10-16
    • 1970-01-01
    • 2017-11-04
    • 2011-01-17
    相关资源
    最近更新 更多