【问题标题】:Cannot open Boost library when building CMake project构建 CMake 项目时无法打开 Boost 库
【发布时间】:2019-07-08 23:00:07
【问题描述】:

我想使用 Visual Studio 2019 构建一个需要 Boost 和多个不同库的 CMake 项目。当我构建为静态库时没有问题,但是当我取消选中 BUILDSTATIC 和 LINKSTATIC 时,我得到:

fatal error LNK1104: cannot open file 'boost_thread-vc142-mt-x64-1_70.lib'
...
fatal error LNK1104: cannot open file 'boost_filesystem-vc142-mt-x64-1_70.lib'

尽管所有必需的变量似乎都设置正确:

Boost_DIR: D:/boost_1_70_0/boost
Boost_INCLUDE_DIR: D:/boost_1_70_0
Boost_LIBRARY_DIR_RELEASE: D:/boost_1_70_0/stage/lib
BOOST_LIBRARYDIR: D:/boost_1_70_0/stage/lib

Boost_FILESYSTEM_LIBRARY_RELEASE: D:/boost_1_70_0/stage/lib/libboost_filesystem-vc142-mt-x64-1_70.lib
Boost_SYSTEM_LIBRARY_RELEASE: D:/boost_1_70_0/stage/lib/libboost_system-vc142-mt-x64-1_70.lib
Boost_THREAD_LIBRARY_RELEASE: D:/boost_1_70_0/stage/lib/libboost_thread-vc142-mt-x64-1_70.lib
Boost_CHRONO_LIBRARY_RELEASE: D:/boost_1_70_0/stage/lib/libboost_chrono-vc142-mt-x64-1_70.lib
Boost_ATOMIC_LIBRARY_RELEASE: D:/boost_1_70_0/stage/lib/libboost_atomic-vc142-mt-x64-1_70.lib
Boost_DATE_TIME_LIBRARY_RELEASE: D:/boost_1_70_0/stage/lib/libboost_date_time-vc142-mt-x64-1_70.lib

可能是什么问题?

【问题讨论】:

    标签: c++ build cmake


    【解决方案1】:

    解决方案是构建动态 Boost 库,然后链接它们,而不是链接到静态库。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-18
      • 2013-02-24
      • 1970-01-01
      相关资源
      最近更新 更多