Configuration de qmake
Propriétés
qmake dispose d'un système de configuration persistante qui vous permet de définir une propriété une seule fois dans qmake et de la consulter à chaque fois que qmake est invoqué. Vous pouvez définir une propriété dans qmake comme suit :
qmake -set PROPERTY VALUEIl convient de remplacer « PROPERTY » et « VALUE » par la propriété et la valeur appropriées.
Vous pouvez récupérer ces informations à partir de qmake comme suit :
qmake -query PROPERTY
qmake -query #queries all current PROPERTY/VALUE pairsRemarque : qmake -query répertorie les propriétés intégrées en plus des propriétés que vous définissez avec qmake -set PROPERTY VALUE.
Ces informations seront enregistrées dans un objet QSettings (ce qui signifie qu’elles seront stockées à des emplacements différents selon les plateformes).
La liste suivante récapitule les propriétés d’ built-in:
- QMAKE_SPEC : nom abrégé de l’
mkspechôte qui est résolu et stocké dans la variable QMAKESPEC lors d’une compilation sur l’hôte - QMAKE_VERSION : la version actuelle de qmake
- QMAKE_XSPEC : nom abrégé de l'
mkspeccible qui est résolu et stocké dans la variable QMAKESPEC lors d'une compilation cible - QT_HOST_BINS - emplacement des exécutables de l'hôte
- QT_HOST_DATA : emplacement des données pour les exécutables de l'hôte utilisés par qmake
- QT_HOST_LIBS - emplacement des bibliothèques de l’hôte
- QT_HOST_LIBEXECS : emplacement des exécutables requis par les bibliothèques de l’hôte lors de l’exécution
- QT_HOST_PREFIX : préfixe par défaut pour tous les chemins d'accès de l'hôte
- QT_INSTALL_ARCHDATA - emplacement des données Qt générales dépendantes de l'architecture
- QT_INSTALL_BINS - emplacement des binaires Qt (outils et applications)
- QT_INSTALL_CONFIGURATION - emplacement des paramètres Qt. Ne s'applique pas sous Windows
- QT_INSTALL_DATA - emplacement des données Qt générales indépendantes de l'architecture
- QT_INSTALL_DOCS - emplacement de la documentation
- QT_INSTALL_EXAMPLES - emplacement des exemples
- QT_INSTALL_HEADERS - emplacement de tous les fichiers d'en-tête
- QT_INSTALL_LIBEXECS - emplacement des exécutables requis par les bibliothèques lors de l'exécution
- QT_INSTALL_LIBS - emplacement des bibliothèques
- QT_INSTALL_PLUGINS - emplacement des plugins Qt
- QT_INSTALL_PREFIX - préfixe par défaut pour tous les chemins d'accès
- QT_INSTALL_QML - emplacement des extensions QML 2.x
- QT_INSTALL_TESTS - emplacement des cas de test Qt
- QT_INSTALL_TRANSLATIONS - emplacement des informations de traduction pour les chaînes Qt
- QT_SYSROOT - le sysroot utilisé par l'environnement de compilation cible
- QT_VERSION - la version de Qt. Nous vous recommandons de consulter les numéros de version spécifiques aux modules Qt en utilisant plutôt les variables $$QT.<module>.version.
Par exemple, vous pouvez interroger l'installation de Qt pour cette version de qmake à l'aide de la propriété QT_INSTALL_PREFIX:
qmake -query "QT_INSTALL_PREFIX"Vous pouvez interroger les valeurs des propriétés dans un fichier de projet comme suit :
QMAKE_VERS = $$[QMAKE_VERSION]QMAKESPEC
qmake nécessite un fichier de description de la plate-forme et du compilateur contenant de nombreuses valeurs par défaut utilisées pour générer les Makefiles appropriés. La distribution standard de Qt est fournie avec bon nombre de ces fichiers, situés dans le sous-répertoire mkspecs de l'installation de Qt.
La variable d’environnement QMAKESPEC peut contenir l’un des éléments suivants :
- Un chemin d’accès complet vers un répertoire contenant un fichier `
qmake.conf`. Dans ce cas, qmake ouvrira le fichier `qmake.conf` à partir de ce répertoire. Si le fichier n’existe pas, qmake se fermera en affichant une erreur. - Le nom d’une combinaison plateforme-compilateur. Dans ce cas, qmake effectuera une recherche dans le répertoire spécifié par le sous-répertoire «
mkspecs» du chemin de données défini lors de la compilation de Qt (voir QLibraryInfo::DataPath).
Remarque : le chemin QMAKESPEC sera automatiquement ajouté au Makefile généré après le contenu de la variable système INCLUDEPATH.
Fichier de cache
Le fichier de cache est un fichier spécial que qmake lit pour trouver les paramètres non spécifiés dans le fichier qmake.conf, dans les fichiers de projet ou sur la ligne de commande. Lorsqu’il est exécuté, qmake recherche un fichier nommé .qmake.cache dans les répertoires parents du répertoire courant, sauf si vous spécifiez -nocache. Si qmake ne parvient pas à trouver ce fichier, il ignorera silencieusement cette étape du traitement.
Si qmake trouve un fichier « .qmake.cache », il le traite en premier avant de traiter le fichier de projet.
Extensions de fichiers
Dans des circonstances normales, qmake tentera d’utiliser les extensions de fichiers appropriées pour votre plate-forme. Cependant, il est parfois nécessaire de remplacer les choix par défaut pour chaque plate-forme et de définir explicitement les extensions de fichiers que qmake doit utiliser. Pour ce faire, il suffit de redéfinir certaines variables intégrées. Par exemple, l’extension utilisée pour les fichiers moc peut être redéfinie à l’aide de l’affectation suivante dans un fichier de projet :
QMAKE_EXT_MOC = .mymocLes variables suivantes peuvent être utilisées pour redéfinir les extensions de fichiers courantes reconnues par qmake :
- QMAKE_EXT_MOC modifie l’extension attribuée aux fichiers moc inclus.
- QMAKE_EXT_UI modifie l’extension utilisée pour les fichiers d’interface utilisateur d’ Qt Widgets Designer (généralement au format FORMS).
- QMAKE_EXT_PRL modifie l’extension attribuée aux fichiers de dépendances de bibliothèques.
- QMAKE_EXT_LEX modifie le suffixe utilisé dans les fichiers Lex (généralement dans LEXSOURCES).
- QMAKE_EXT_YACC modifie le suffixe utilisé dans les fichiers Yacc (généralement dans YACCSOURCES).
- QMAKE_EXT_OBJ modifie le suffixe utilisé pour les fichiers objets générés.
Toutes les variables ci-dessus n'acceptent que la première valeur ; vous devez donc leur attribuer une seule valeur qui sera utilisée dans l'ensemble de votre fichier de projet. Deux variables acceptent une liste de valeurs :
- QMAKE_EXT_CPP fait en sorte que qmake interprète tous les fichiers portant ces extensions comme des fichiers source C++.
- QMAKE_EXT_H fait en sorte que qmake interprète tous les fichiers portant ces suffixes comme des fichiers d’en-tête C et C++.
© 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.