Sur cette page

Référence des variables CMake

Variables de compilation Qt

Lors de la compilation de Qt, vous pouvez utiliser des variables CMake pour contrôler le résultat de la compilation.

VariableDescription
QT_HOST_PATHEmplacement de l'installation Qt de l'hôte à partir de laquelle les outils de l'hôte peuvent être utilisés lors d'une autre compilation de Qt, qu'il s'agisse d'une compilation standard ou d'une compilation croisée.
QT_FORCE_BUILD_TOOLSForce l'utilisation des outils de compilation même si des outils de l'hôte ont déjà été détectés. Utile lors de la compilation croisée de Qt pour s'assurer que le SDK dispose d'outils compilés de manière croisée.
QT_FORCE_FIND_TOOLSUtilise les outils Qt issus de la version précompilée de Qt disponible sur QT_HOST_PATH lorsque vous n'effectuez pas de compilation croisée. La variable ne prend effet que si QT_FORCE_BUILD_TOOLS est défini sur ON. Sinon, QT_FORCE_FIND_TOOLS n'affecte pas le comportement par défaut.

Variables de module

Les modules Qt chargés avec find_package définissent diverses variables.

Remarque : vous n’avez que rarement besoin d’accéder directement à ces variables. Les tâches courantes, telles que la liaison à un module, doivent être effectuées via les cibles de bibliothèque définies par chaque module.

Par exemple, la commande ` find_package(Qt6 COMPONENTS Widgets)`, lorsqu’elle aboutit, rend les variables suivantes disponibles :

VariableDescription
Qt6Widgets_COMPILE_DEFINITIONSUne liste de définitions de compilation à utiliser lors de la compilation de la bibliothèque.
Qt6Widgets_DEFINITIONSUne liste de définitions à utiliser lors de la compilation avec la bibliothèque.
Qt6Widgets_EXECUTABLE_COMPILE_FLAGSUne chaîne de drapeaux à utiliser lors de la compilation d’exécutables à partir de la bibliothèque.
Qt6Widgets_FOUNDUne valeur booléenne indiquant si le module a été trouvé avec succès.
Qt6Widgets_INCLUDE_DIRSUne liste des répertoires d'inclusion à utiliser lors de la compilation avec la bibliothèque.
Qt6Widgets_LIBRARIESLe nom de la cible importée pour le module : Qt6::Widgets
Qt6Widgets_PRIVATE_INCLUDE_DIRSUne liste de répertoires d'inclusion privés à utiliser lors de la compilation avec la bibliothèque et de l'utilisation de l'API Qt privée.
Qt6Widgets_VERSIONUne chaîne de caractères contenant la version du module.

Pour tous les paquets trouvés avec ` find_package`, des équivalents de ces variables sont disponibles ; ils sont sensibles à la casse.

Variables d'installation

De plus, il existe également des variables qui ne sont pas liées à un paquet particulier, mais à l'installation de Qt elle-même.

VariableDescription

QT_DEFAULT_MAJOR_VERSION

Un entier qui contrôle la version de Qt vers laquelle les commandes « qt_ » redirigent en cas de projets mixtes Qt 5 et Qt 6. Il doit être défini soit sur « 5 », soit sur « 6 » avant les appels respectifs à « find_package() ».

S’il est défini sur 5, les commandes commençant par qt_ appelleront leur équivalent commençant par qt5_. S’il est défini sur 6, elles appelleront leur équivalent commençant par qt6_.

Si aucun paramètre n’est défini, le premier appel à find_package définit la version par défaut.

QT_LIBINFIXChaîne de caractères contenant l'infixe utilisé dans les noms de bibliothèques, lorsque Qt est configuré avec -libinfix.

QT_NO_CREATE_VERSIONLESS_FUNCTIONS

Masque les commandes commençant par qt_, ne laissant apparaître que celles comportant une version et commençant par qt6_.

QT_NO_CREATE_VERSIONLESS_TARGETS

Masque les cibles importées commençant par « Qt:: ». À la place, vous devez utiliser les cibles commençant par « Qt6:: ».
QT_VISIBILITY_AVAILABLESous Unix, une valeur booléenne indiquant si les bibliothèques et les plugins Qt ont été compilés avec l’option « -fvisibility=hidden ». Cela signifie que seuls certains symboles sont exportés.

Variables de projet

Ces variables peuvent influencer les commandes CMake fournies par Qt. Elles peuvent être définies par le projet, un fichier de chaîne d’outils ou d’autres paquets tiers.

Qt6::Core

ANDROID_NDK_HOST_SYSTEM_NAME

Architecture spécifique à Android du système hôte

ANDROID_SDK_ROOT

Emplacement du SDK Android

QT_ANDROID_ABIS

Liste des ABI pour lesquelles les paquets du projet sont compilés

QT_ANDROID_APPLICATION_ARGUMENTS

Liste des arguments à transmettre aux applications Android

QT_ANDROID_BUILD_ALL_ABIS

Permet de construire des paquets multi-ABI à l’aide de la liste des SDK Qt pour Android détectés automatiquement

QT_ANDROID_CREATE_SYMLINKS_ONLY

Créer uniquement des liens symboliques pour les dépendances situées dans le répertoire du projet Gradle

QT_ANDROID_DEPLOYMENT_TYPE

Force ou désactive la signature des paquets de publication, quel que soit le type de compilation

QT_ANDROID_GENERATE_JAVA_QTQUICKVIEW_CONTENTS

Active la génération de classes basées sur QtQuickViewContent

QT_ANDROID_GRADLE_MULTI_MODULE

Compile le paquet Android à partir d’un projet Gradle multi-modules

QT_ANDROID_MULTI_ABI_FORWARD_VARS

Permet de partager des variables CMake dans les builds multi-ABI

QT_ANDROID_POST_BUILD_GRADLE_CLEANUP

Effectue un nettoyage Gradle après la création du paquet Android

QT_ANDROID_SIGN_AAB

Signe le paquet .aab à l'aide du keystore, de l'alias et du mot de passe de stockage spécifiés

QT_ANDROID_SIGN_APK

Signe le paquet à l'aide du keystore, de l'alias et du mot de passe de stockage spécifiés

QT_DEPLOY_BIN_DIR

Sous-répertoire relatif au préfixe pour le déploiement des binaires d’exécution sur certaines plateformes cibles

QT_DEPLOY_IGNORED_LIB_DIRS

Répertoires exclus de la recherche des dépendances d'exécution

QT_DEPLOY_LIBEXEC_DIR

Sous-répertoire relatif au préfixe pour le déploiement des exécutables de programme sur certaines plateformes cibles

QT_DEPLOY_LIB_DIR

Sous-répertoire relatif au préfixe pour le déploiement des bibliothèques sur certaines plateformes cibles

QT_DEPLOY_PLUGINS_DIR

Sous-répertoire relatif au préfixe pour le déploiement des plugins Qt sur certaines plateformes cibles

QT_DEPLOY_PREFIX

Emplacement de base pour un déploiement

QT_DEPLOY_QML_DIR

Sous-répertoire relatif au préfixe pour le déploiement des plugins QML sur certaines plateformes cibles

QT_DEPLOY_SUPPORT

Nom du fichier à inclure pour configurer la prise en charge du déploiement

QT_DEPLOY_TRANSLATIONS_DIR

Sous-répertoire relatif au préfixe pour le déploiement des traductions Qt sur certaines plateformes cibles

QT_ENABLE_VERBOSE_DEPLOYMENT

Active le mode détaillé des outils de déploiement

QT_HOST_PATH

Emplacement de l'installation Qt hôte lors de la compilation croisée

QT_I18N_SOURCE_LANGUAGE

Spécifie la langue des chaînes traduisibles

QT_I18N_TRANSLATED_LANGUAGES

Liste des langues à utiliser pour l'internationalisation du projet

QT_IOS_LAUNCH_SCREEN

Chemin d’accès au storyboard de l’écran de lancement iOS utilisé par toutes les cibles

QT_NO_COLLECT_BUILD_TREE_APK_DEPS

Empêche la collecte des cibles de bibliothèques partagées générées par le projet lors du déploiement Android

QT_NO_COLLECT_IMPORTED_TARGET_APK_DEPS

Empêche la collecte des cibles importées lors du déploiement sur Android

QT_NO_SET_XCODE_BUNDLE_IDENTIFIER

Désactive la fourniture d’un identifiant de bundle d’application de secours lors de la finalisation de la cible sous iOS

QT_NO_SET_XCODE_DEVELOPMENT_TEAM_ID

Désactive la fourniture d’un identifiant d’équipe de secours lors de la finalisation de la cible sur iOS

QT_NO_STANDARD_PROJECT_SETUP

Empêche les appels suivants à qt_standard_project_setup() d’effectuer des modifications

QT_PATH_ANDROID_ABI_<ABI>

Ensemble de variables permettant de spécifier le chemin d'accès à Qt pour Android pour l'ABI correspondante

QT_USE_TARGET_ANDROID_BUILD_DIR

Active l’utilisation de répertoires de compilation Android par cible

Qt6::InterfaceFramework

IFCODEGEN_VERBOSE

Active la journalisation détaillée pour toutes les fonctions ifcodegen

QT_IFCODEGEN_TEMPLATE_SEARCH_PATH

Chemin de recherche pour les modèles ifcodegen

Qt6::Multimedia

QT_NO_FFMPEG_XCODE_EMBED_FRAMEWORKS_CODE_SIGN_ON_COPY

Désactive la signature de code FFmpeg sur iOS

Qt6::Qml

QT_QMLLINT_CONTEXT_PROPERTY_DUMP

Active le vidage des propriétés de contexte dans les cibles lint

QT_QML_GENERATE_AOTSTATS

Détermine si la collecte de statistiques du compilateur QML est activée

QT_QML_GENERATE_QMLLS_INI

Active la génération automatique de fichiers .qmlls.ini pour QML Language Server

QT_QML_GENERATE_QMLLS_INI_NO_CMAKE_CALLS

Personnalise la valeur de « no-cmake-calls » dans les fichiers .qmlls.ini pour QML Language Server

QT_QML_NO_CACHEGEN

Désactive la compilation des fichiers QML en bytecode ou en code C++

QT_QML_NO_QML_PREVIEW (global property)

Détermine si la prise en charge de `qmlpreview` est automatiquement configurée pour les exécutables liés à Qt6::Qml

QT_QML_OUTPUT_DIRECTORY

Répertoire de sortie de base dans lequel les modules QML seront créés par défaut

Variables CMake standard

CMAKE_AUTOGEN_BETTER_GRAPH_MULTI_CONFIGAméliore le graphe de dépendances pour les générateurs multi-configuration

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.