如何在柯南包中修复库依赖性

时间:2020-07-19 09:08:45

标签: installation qt5 conan

我正在尝试使用柯南安装qt / 5.14.2。 使用

qt/5.14.2@bincrafters/stable

我收到

ERROR: libpq/11.5: Error in package_info() method, line 211
    self.cpp_info.components["pq"].requires.append("zlib::zlib")
    AttributeError: 'Component' object has no attribute 'requires'

好的,libpq / 11.5中有一个错误

我正在尝试降级为

libpq/11.4@bincrafters/stable

ERROR: Conflict in qt/5.14.2@bincrafters/stable:
    'qt/5.14.2@bincrafters/stable' requires 'zlib/1.2.11' while 'libpq/11.4@bincrafters/stable' requires 'zlib/1.2.11@conan/stable'.
    To fix this conflict you need to override the package 'zlib' in your root package.

顺便说一句: 为什么仅要求库的正确版本并要求相同的存储库还不够? (并且出于相同的依赖关系,需要在两个不同的包中包含两个不同的存储库)

好,我尝试过

zlib/1.2.11@bincrafters/stable

WARN: libpq/11.4@bincrafters/stable: requirement zlib/1.2.11@conan/stable overridden by your conanfile to zlib/1.2.11@bincrafters/stable 
zlib/1.2.11@bincrafters/stable: Not found in local cache, looking in remotes...
zlib/1.2.11@bincrafters/stable: Trying with 'conan-center'...
zlib/1.2.11@bincrafters/stable: Trying with 'minres'...
zlib/1.2.11@bincrafters/stable: Trying with 'bincrafters'...
ERROR: Failed requirement 'zlib/1.2.11@bincrafters/stable' from 'libpq/11.4@bincrafters/stable'
ERROR: Unable to find 'zlib/1.2.11@bincrafters/stable' in remotes

最后,我到达了

libpq/11.4@bincrafters/stable
zlib/1.2.11@conan/stable
qt/5.14.2@bincrafters/stable

在此之后,看起来还可以:

Installing (downloading, building) binaries...
qt/5.14.2@bincrafters/stable: Retrieving package 93c70de10405da9f2d5a1f42b8c299ca7af869d2 from remote 'bincrafters' 
Downloading conanmanifest.txt
Downloading conaninfo.txt
Downloading conan_package.tgz
....qt/5.14.2@bincrafters/stable: Package installed 93c70de10405da9f2d5a1f42b8c299ca7af869d2
qt/5.14.2@bincrafters/stable: Downloaded package revision 0

但是,安装失败并显示

  CMake was unable to find Qt5, put qmake in your path or set
  QTDIR/QT_QMAKE_EXECUTABLE.

该软件包已下载,我在主目录的相应子目录中看到了所有组件。但是,与其他组件不同,它是在CMake尝试找到它之前未安装的。

我怎么了?

1 个答案:

答案 0 :(得分:1)

如果柯南有任何奇怪的行为,请升级!对我来说,使用配置清除1.24.0-> 1.28.1开关可以解决libpq / 11.5的相同问题

相关问题