Qt 模块的加载采用
find_package
设置各种变量。
注意: 您很少需要直接访问这些变量。像链接到模块的常见任务,应透过每个模块定义的库目标来完成。
例如,
find_package(Qt5 COMPONENTS Widgets)
,当成功时,使以下变量变得可用:
变量 | 描述 |
---|---|
Qt5Widgets_COMPILE_DEFINITIONS
|
要使用的编译定义列表,当针对库构建时。 |
Qt5Widgets_DEFINITIONS
|
要使用的定义列表,当针对库构建时。 |
Qt5Widgets_EXECUTABLE_COMPILE_FLAGS
|
要使用的标志字符串,当针对库构建可执行文件时。 |
Qt5Widgets_FOUND
|
描述是否成功找到模块的布尔。 |
Qt5Widgets_INCLUDE_DIRS
|
要使用的 include (包括) 目录列表,当针对库构建时。 |
Qt5Widgets_LIBRARIES
|
模块导入目标的名称:
Qt5::Widgets
|
Qt5Widgets_PRIVATE_INCLUDE_DIRS
|
要使用的私有 include (包括) 目录列表,当针对库构建并使用私有 Qt API 时。 |
Qt5Widgets_VERSION_STRING
|
包含模块版本的字符串。 |
对于找到的所有包采用
find_package
,这些变量的等价物是可用的;它们区分大小写。
此外,还有一些变量与特定包无关,但与 Qt 安装本身相关。
变量 | 描述 |
---|---|
QT_DEFAULT_MAJOR_VERSION
|
控制 Qt 版本的整数,
qt_
命令被转发给 Qt 5 和 Qt 6 混合工程。需要将其设为
5
or
6
先前分别
find_package()
调用。
若设为
若未设置,首
|
QT_LIBINFIX
|
保持库名称所用中缀的字符串,当有配置 Qt 采用
-libinfix
.
|
QT_NO_CREATE_VERSIONLESS_FUNCTIONS
|
从 Qt 5.15 起,模块定义的命令不仅开头采用
qt5_
,且还采用
qt_
。您可以设置
QT_NO_CREATE_VERSIONLESS_FUNCTIONS
before
find_package
to prevent this.
|
QT_NO_CREATE_VERSIONLESS_TARGETS
|
从 Qt 5.15 起,模块定义的目录不仅开头采用
Qt5::
,且还采用
Qt::
。您可以设置
QT_NO_CREATE_VERSIONLESS_TARGETS
before
find_package
to prevent this.
|
QT_VISIBILITY_AVAILABLE
|
在 Unix,布尔描述 Qt 库和插件是否被编译采用
-fvisibility=hidden
。这意味着仅选中符号被导出。
|