Programmation Qt/Projet Qt
Un projet Qt comporte un fichier d'extension .pro listant les fichiers du projet et permettant de configurer la compilation de l'application.
Syntaxe
[modifier | modifier le wikicode]Un fichier projet est un fichier texte dont la syntaxe ressemble à celle des Makefile.
Un commentaire commence par la caractère dièse # et se termine en fin de ligne. Il définit un certain nombre de variables en utilisant l'un des trois opérateurs =, += et -=. Ces variables contiennent en général une liste de valeurs qui peut être modifiée à l'aide de l'opérateur += pour ajouter un élément et de l'opérateur -= pour retirer un élément.
# Définir la valeur (remplace la valeur précédente)
VARIABLE = valeur1 valeur2
# Ajouter une ou des valeurs
VARIABLE += valeur3 valeur4
# Retirer une ou des valeurs
VARIABLE -= valeur2 valeur4
Créer un projet
[modifier | modifier le wikicode]Créer un fichier projet (*.pro) pour une application peut se faire de différentes façons :
- Utiliser la commande suivante pour générer un fichier automatiquement à partir des fichiers sources du répertoire courant :
qmake -project
- Le créer manuellement avec un éditeur de texte,
- Le créer avec Qt Creator.
Variables
[modifier | modifier le wikicode]Les variables sont de différent types :
- celles qui listent les fichiers du projet,
- celles qui permettent de configurer la compilation du projet.
Liste des fichiers
[modifier | modifier le wikicode]Les variables listant les fichiers du projet sont :
HEADERS
: fichiers d'en-tête (*.h),SOURCES
: fichiers sources (*.cpp),FORMS
: fichiers formulaires d'interface utilisateur (*.ui),RESOURCES
: fichiers de ressources (*.qrc).TRANSLATIONS
: fichiers de traductions des messages de l'application (*.ts).
Configuration de la compilation
[modifier | modifier le wikicode]Les variables suivantes permettent de configurer la compilation du projet :
QT
- Liste des modules Qt utilisés, sans le préfixe Qt. Pour pouvoir utiliser certaines classes, il faut ajouter les modules auxquels elles appartiennent. Par défaut QtCore et QtGui sont inclus. Par exemple, pour utiliser la classe
QLocalSocket
, il faut ajouter le module QtNetwork : QT += network
- Si une application n'utilise aucune interface utilisateur graphique, QtGui peut être enlevé :
QT -= gui
TEMPLATE
- Modèle d'exécutable à générer. Cette variable n'est pas une liste de valeurs, et ne peut avoir que l'une des valeurs suivantes:
app
: pour construire une application autonomelib
: pour construire une bibliothèque ou un plug-in.vcapp
: pour construire une application Visual C++ autonomevclib
: pour construire une bibliothèque ou un plug-in Visual C++.subdirs
: pour créer un makefile de compilation des sous-répertoires listés dans la variableSUBDIRS
.
DEFINES
- Liste des symboles définis lors de la compilation des fichiers sources.
TARGET
- Nom du fichier exécutable produit. Par défaut, l'exécutable porte le même nom que le fichier projet (extension modifiée en .exe sous Windows).
Pour plus de détails, voir http://qt-project.org/doc/qt-4.8/qmake-variable-reference.html