错误“找不到 Boost”(缺少:上下文标头)
Posted
技术标签:
【中文标题】错误“找不到 Boost”(缺少:上下文标头)【英文标题】:Error "Could not find Boost" (missing: context headers) 【发布时间】:2020-07-07 19:15:30 【问题描述】:我添加了这样的提升:“-DBoost_INCLUDE_DIR=/boost_1_71_0” 这就是我得到的:
找不到 Boost(缺少:上下文标头)(找到合适的 版本“1.71.0”,最低要求是“1.71”)
Cmake 可以确定 boost 版本,但不能同时找到 boost! 有办法解决吗?
这就是我在我的 cmake 文件中包含 boost 的方式。这里没什么好看的。
find_package(Boost 1.71 COMPONENTS context headers REQUIRED)
【问题讨论】:
向我们展示您的CMakeLists.txt
文件。一般来说,使用find_package
和FindBoost.cmake
——见***.com/questions/3897839/…;另请查看您是否在 cmakelists 文件中的某处设置了所需的最低版本。
可能是您的 CMake 还不了解 boost 1.71。
【参考方案1】:
Boost context 和 headers 是 header only 库,因此不需要在 find_packages
调用中提及。做一个简单的find_package(Boost 1.71 REQUIRED)
就完成了。稍后您可以在target_link_libraries
command 中使用Boost::boost
或Boost::headers
引用Boost 头目录。
【讨论】:
以上是关于错误“找不到 Boost”(缺少:上下文标头)的主要内容,如果未能解决你的问题,请参考以下文章
FindPackageHandleStandardArgs.cmake:137 处的 CMake 错误(消息):找不到 Boost(缺少:正则表达式)(找到合适的版本“1.72.0”,