CMake 變量參考

模塊變量

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() 調用。

若設為 5 ,命令開頭采用 qt_ 將調用的搭檔的開頭采用 qt5_ 。若設為 6 ,它們將調用的搭檔的開頭采用 qt6_ .

若未設置,首 find_package call defines the default version. This functionality was added in Qt 5.15.

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 。這意味著僅選中符號被導齣。