【发布时间】:2020-03-20 13:15:16
【问题描述】:
假设我在一个项目中有 2 个不同的 conanfile.py,我调用 conan install 两次来安装它们的依赖项。我在将它们添加到 cmake 时遇到了麻烦。
如果我使用基本设置
include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)
conan_basic_setup()
它只包括最新的。是否可以包含多个 conanbuildinfo.cmake 文件?
【问题讨论】:
-
不,你不能。为什么需要 2 个 conanfiles? Conanfile.py 是一个python脚本,你可以根据需要自定义,一个recipe就足够了。
-
我想为 2 个不同的模块保持独立的依赖关系。例如,我想为其他模块使用一个通用的 conanfile.py 和另一个 conanfile.py。保持这一点的唯一方法是使用模块中的要求更新通用 conanfile.py 如果模块存在,我猜?
-
other modules是什么意思?是子模块吗? -
是子模块。
-
@uilianries 我要解决的问题是我的项目中有不同的子模块。我可以包括所有这些或其中一些或仅一个。假设我使用了所有模块并将所有依赖项放在一个 conanfile.py 中,这很好。但是如果我添加任何一个模块并使用相同的 conanfile.py,它将再次安装所有无效的依赖项。柯南有解决这种情况的办法吗?