Cmake 柯南配方依赖性

Cmake 柯南配方依赖性,cmake,conan,Cmake,Conan,我开始学习柯南,我有一个疑问。假设我有一个依赖于boost和cgal的库。Cgal自身也依赖于boost 如果我有cgal的配方,我将如何表明我想要使用与库中使用的相同的boost版本?您需要首先检查cgal使用的版本,并在新配方中设置相同的特定版本 如果您使用不同的版本,柯南将警告您,但您可以使用参数强制它。因此,您将能够使用不同的版本 当然,如果您想使用相同的版本并确保它在一段时间后不会更改,您也可以使用。因此,您将为每个新版本使用完全相同的版本 为什么柯南不能动态检测版本?嗯,这是个鸡蛋问

我开始学习柯南,我有一个疑问。假设我有一个依赖于boost和cgal的库。Cgal自身也依赖于boost


如果我有cgal的配方,我将如何表明我想要使用与库中使用的相同的boost版本?

您需要首先检查cgal使用的版本,并在新配方中设置相同的特定版本

如果您使用不同的版本,柯南将警告您,但您可以使用参数强制它。因此,您将能够使用不同的版本

当然,如果您想使用相同的版本并确保它在一段时间后不会更改,您也可以使用。因此,您将为每个新版本使用完全相同的版本

为什么柯南不能动态检测版本?嗯,这是个鸡蛋问题。为了检测需求并生成图形锁,首先,柯南需要知道您在配方中需要什么作为需求。另一方面,您希望在说出所需内容之前了解图形锁,以检测正确的Boost版本。因此,在设置您自己的需求之前,您将无法知道cgal正在使用哪个Boost版本,并且Conan将无法生成依赖树