【问题标题】:How do you build boost windows library thread_win32?你如何构建boost windows库thread_win32?
【发布时间】:2021-09-19 08:44:18
【问题描述】:

我正在写一个问题,我正在尝试使用 mingw32-make.exe 和 Windows 10 上的 Boost 1.67.0 依赖项构建第三方库。

我将变量 Boost_INCLUDE_DIR 设置为 \boost_1_67_0\include

我将变量 Boost_LIBRARY_DIR 设置为 \boost_1_67_0\lib

并且 cmake-gui 输出带有以下错误消息:

因为,我想,我的 boost 安装中没有 libboost_thread_win32.a 库(如下所示)。

我该如何解决这个问题?有没有办法使用 minGW 通过这个 thread_win32 库轻松构建 boost?

【问题讨论】:

  • 实际上看起来像一个 CMake 错误。您可以尝试从 UHDBoost.cmake 第 176 行中的 find_package("Boost", "1.58") 中删除“1.58”版本要求
  • 这就是我说“看起来像一个 CMake 错误”的原因
  • 如果我修改 FindPackageHandleStandleStandardArgs.cmake 以忽略该错误,那么我会在下一行收到一个错误...“cmake/Modules/UHDComponent.cmake 处的 Cmake 错误:59(消息):依赖于所需组件 LibUHD 未满足。调用堆栈(最近调用优先):CMakeLists.txt:363 (LIBUHD_REGISTER_COMPONENT)" 所以看起来用 mingw32 构建的 boost thread_win32 库可能是必不可少的?

标签: winapi boost mingw32 usrp uhd


【解决方案1】:

要在Windows 上为cmake 构建boost 1.67.0,您需要设置变量:

  • BOOST_ROOT\boost_1_67_0
  • BOOST_LIBRARY_DIR 到你构建的路径boost
    例如。 \boost_1_67_0\stage 如果您按照说明进行操作 here

【讨论】:

    猜你喜欢
    • 2010-09-23
    • 1970-01-01
    • 2015-08-01
    • 2020-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-04
    相关资源
    最近更新 更多