Sur cette page

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 VALUE

Il 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 pairs

Remarque : 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’ mkspec hô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'mkspec cible 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 = .mymoc

Les variables suivantes peuvent être utilisées pour redéfinir les extensions de fichiers courantes reconnues par qmake :

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.