【问题标题】:Boost lib missing 'libboost_date_time-vc90-mt-gd-1_44.lib file. How to build only this lib file using bjam?Boost lib 缺少 'libboost_date_time-vc90-mt-gd-1_44.lib 文件。如何使用 bjam 只构建这个 lib 文件?
【发布时间】:2011-11-24 19:34:54
【问题描述】:

我需要使用 boost/gregorian 中可用的日期时间函数。当我在 Visual Studio 2008 中编译时,我收到错误 LINK : fatal error LNK1104: cannot open file 'libboost_date_time-vc90-mt-gd-1_44.lib'

我查看了系统中的 lib 文件夹,发现这些文件以前没有构建。问题是如何使用 Bjam 仅构建特定的 lib 文件?我确实看到了提供的文档,但由于我有其他必要的 lib 文件,我不打算重建它们。有没有办法做到这一点?任何命令都会有所帮助。

谢谢。

【问题讨论】:

  • 当然,使用bjam 可以轻松构建一切。有什么理由不这样做?

标签: c++ boost boost-date-time


【解决方案1】:

以 libboost 开头的库是 boost 库的静态版本,vc90 = VS2008,mt = 多线程运行时,gd = 调试版本:

尝试运行类似的东西

bjam --toolset=msvc-9.0 debug link=static runtime-link=shared install

您应该能够在 boost date time 目录中运行 bjam 以仅构建该库。 IIRC 每个目录都包含一个 jam 文件,但我有待纠正。

当然,您可能还想构建库的发布版本。 总的来说,我认为构建所有版本是个好主意,即静态、动态、调试和发布。以我的经验,这使得 VS 中的 boost 自动链接更容易做到这一点。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-22
    • 2011-01-17
    • 1970-01-01
    • 2011-06-14
    • 2020-10-06
    • 2019-01-14
    相关资源
    最近更新 更多