【发布时间】:2020-03-04 01:33:59
【问题描述】:
使用 CMake 生成构建配置时找不到CONAN_PKG::spdlog。
我使用的 conan 包是 spdlog/1.3.1@bincrafters/stable。
我有一个引用柯南包spdlog 的CMake 可执行目标。我收到此错误消息:
[build] CMake Error at src/apps/ResultObserver/CMakeLists.txt:10 (ADD_EXECUTABLE):
[build] Target "ResultObserver" links to target "CONAN_PKG::spdlog" but the target
[build] was not found. Perhaps a find_package() call is missing for an IMPORTED
[build] target, or an ALIAS target is missing?
我的 CMakeLists.txt 中有这些行。
include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)
conan_basic_setup()
ADD_EXECUTABLE(ResultObserver src/ResultObserver.cpp)
TARGET_LINK_LIBRARIES(ResultObserver CONAN_PKG::spdlog)
另外,安装conan包后,在build目录下会生成conanbuildinfo.cmake文件。
我检查了里面的文件。它包含这些行。
add_library(CONAN_PKG::spdlog INTERFACE IMPORTED)
# Property INTERFACE_LINK_FLAGS do not work, necessary to add to INTERFACE_LINK_LIBRARIES
set_property(TARGET CONAN_PKG::spdlog PROPERTY INTERFACE_LINK_LIBRARIES .........
有人知道原因吗?
【问题讨论】: