【问题标题】:Rebuilding Conan package when dependency's option changes依赖选项改变时重建柯南包
【发布时间】:2021-04-26 20:09:22
【问题描述】:

我有一个包foo 和一个名为option_a 的选项,它控制在编译foo 及其使用者时要使用的定义。

我还有一个包bar,将foo 作为依赖项。

最后,我有一个依赖于bar 并传递依赖于foo 的应用程序。

我遇到的问题是,如果我更改foo:option_a,我需要使用更新的定义重新编译bar,否则我的编译失败。如何在 bar 的 conanfile 中表示将 foo:option_a 包含在其 package_id 中,以便重新编译 option_a 更改?

【问题讨论】:

    标签: conan


    【解决方案1】:

    我强烈建议阅读柯南文档中的Dependency Issues 部分,以了解柯南 ABI 兼容性的工作原理,它将解释您的情况。

    作为解决方案,我建议您使用full transitive mode,也在同一文档页面中进行了说明。

    为什么柯南默认不解决?

    向后兼容 1.x 版。已创建新的包 ID 模式以解决新问题,当 1.0 发布时,semver_direct_mode 解决了最常见的情况。

    【讨论】:

      猜你喜欢
      • 2020-07-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多