我在官方柯南教程中研究过创建包。我想为静态库(基于 CMake 的项目)创建自己的包。它支持Linux和Windows。但这取决于 Qt LTS 5.9x。CMakeLists.txt 包含对find_package
. 通常我通过
-DCMAKE_PREFIX_PATH=path_to_qt_cmake_modules
到 cmake 实用程序。柯南没有官方的 Qt 5.9 支持。在包安装期间传递 CMAKE_PREFIX_PATH
给的正确方法是什么?conan
如果您正在使用CMake
帮助程序,您可以在方法中定义任何 cmake 变量build()
:
from conans import ConanFile, CMake
class ExampleConan(ConanFile):
...
def build(self):
cmake = CMake(self)
cmake.definitions["CMAKE_PREFIX_PATH"] = <your-prefix-path>
cmake.configure()
cmake.build()
cmake.install() # Build --target=install
如果您想要 Qt 本地安装的可参数化路径,您可以使用普通的 env-vars。它们可以在系统中定义,但为方便起见,它们也可以在您的配置文件中定义:
[settings]
...
[env]
QT_PATH=my/path/to/qt
然后使用类似的东西:
cmake.definitions["CMAKE_PREFIX_PATH"] = os.environ["QT_PATH"]