在requirescon_flict项目中,有两个子文件夹,如果分别进行conan create操作创建lib a 和lib b,然后再在根目录执行conan install,是会报错的:
conan create lib_a user/testing
conan create lib_b user/testing
conan install .

lib a 和lib b分别依赖zlib的两个版本,这样就导致如果还有一个包同时依赖lib a 和lib b的时候,是无法成功的。
要解决这个问题,可以在conanfile.txt中显式设置依赖,例如在[requires]中增加
add zlib/1.2.11
然后再conan install:
就成功解决冲突了。

还有一种冲突,即:
你可以通过在conanfile.txt中修改[options]字段,在conanfile.py中修改options变量,或者在configure()函数中进行设置,这三种方案去解决。