【发布时间】:2021-12-12 23:18:22
【问题描述】:
我想为我在 Github 上找到的一个项目制作一个柯南包。该项目是一个 CMake 项目,依赖于 openssl。该项目使用正常的 find_package 找到 openssl。
我的配方显然声明了 openssl 依赖项,但我苦苦挣扎的是如何在项目的 CMake 中获取 find_package(openssl) 以找到柯南获得的 openssl?
【问题讨论】:
标签: conan
我想为我在 Github 上找到的一个项目制作一个柯南包。该项目是一个 CMake 项目,依赖于 openssl。该项目使用正常的 find_package 找到 openssl。
我的配方显然声明了 openssl 依赖项,但我苦苦挣扎的是如何在项目的 CMake 中获取 find_package(openssl) 以找到柯南获得的 openssl?
【问题讨论】:
标签: conan
您需要cmake_find_package 生成器。
from conans import ConanFile
class Foo(ConanFile):
requires = "openssl/1.1.1l"
generators = "cmake", "cmake_find_package"
...
这将为您的所有依赖项生成Findxxx.cmake。
如果您是第一次创建包,我建议您阅读官方文档中的how to create a package,以及Conan Center Index 中的最佳实践。
更新:使用CMakeDeps
柯南 2.0 进行了许多改进,包括生成器的新方法。 CMakeDeps 是需要 xxx-config.cmake 时的新方法。它还没有开始的文档,但它的引用带来了一个非常简单的例子。
【讨论】: