【问题标题】:CMake finds wrong boost versionCMake 发现错误的 boost 版本
【发布时间】:2019-06-28 10:07:49
【问题描述】:

我运行 find_package(Boost) 和 CMake 输出 1.53。但是我已经通过包管理器安装了 1.62。不幸的是我需要> 1.58。见截图。我正在使用 Debian 9,稳定版,64 位。我正在尝试通过 Pybombs 构建 GnuRadio ......

【问题讨论】:

  • 请粘贴日志的文本表示,而不是屏幕截图。请参阅How to Ask 了解更多信息。
  • 能不去掉boost-1.53​​开发组件吗?您可能需要保留共享库以支持应用程序,但希望 CMake 不会选择实际不存在开发组件的 Boost 版本。

标签: boost makefile cmake


【解决方案1】:

问题解决了。显然 CMake 检查了一个本地安装的 version.hpp 文件(/usr/local/include/boost),可能是我很久以前...

有趣的是,没有相应的库,CMake 也没有尝试查看默认目录。 我必须执行以下操作:

  • SET(BOOST_INCLUDEDIR "/usr/include/boost")
  • SET(BOOST_LIBRARYDIR"/usr/lib/x86_64-linux-gnu")

我通过调试标志发现了错误

  • SET(Boost_DEBUG ON)

也许它对某人有用:)

【讨论】:

  • 安装在/usr/local 中的东西通常被分配比其他东西更高的优先级,理论上它构成了应该具有更高优先级的系统特定自定义。至于CMake在这些特定情况下的行为,嗯,软件有时会存在弱点和缺陷,而您的系统环境在这方面相当不正常。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-08-01
  • 2018-09-28
  • 1970-01-01
  • 2011-12-12
  • 2017-12-23
  • 2020-09-28
  • 1970-01-01
相关资源
最近更新 更多