0

我在使用 bincrafters 构建的 1.69.0 版本的 Boost conan 包时遇到了问题。我在使用 libcurl 和 zlib 等其他柯南软件包时没有问题。

我写了一个 conanfile.txt 像这样:

[requires]
boost_context/1.69.0@bincrafters/stable
boost_coroutine/1.69.0@bincrafters/stable
boost_date_time/1.69.0@bincrafters/stable
boost_filesystem/1.69.0@bincrafters/stable
boost_iostreams/1.69.0@bincrafters/stable
boost_program_options/1.69.0@bincrafters/stable
expat/2.2.5@bincrafters/stable
libcurl/7.56.1@bincrafters/stable

[generators]
cmake_find_package

在 CMakeLists.txt 中,我试图像这样链接:

target_link_libraries(
  llcommon PUBLIC
  expat::expat
  zlib::zlib
  boost_coroutine::boost_coroutine
  boost_context::boost_context
  )

找到 Expat 和 Zlib 并顺利链接。但是,对于 boost* 库,我从 CMake 收到以下错误:

CMake Error at llcommon/CMakeLists.txt:243 (add_library):
  Target "llcommon" links to target "boost_context::boost_context" but the
  target was not found.  Perhaps a find_package() call is missing for an
  IMPORTED target, or an ALIAS target is missing?

我缺少有关 bincrafters 模块化 Boost 包的内容吗?或者我可以不使用conan_find_package和他们一起使用发电机吗?

4

1 回答 1

0

解决。我没有更新find_package通话。

find_package(boost_coroutine)
find_package(boost_context)

失踪

显然,下次我需要注意 CMake 错误告诉我的内容。

于 2018-12-23T19:01:54.363 回答