Qt utilise qmake pour prendre en charge de manière transparente les différents modules complémentaires de Qt, notamment "moc, le compilateur de méta-objets" (qui fournit des signaux et des slots), "uic, le compilateur d'interface utilisateur" (qui crée des fichiers d'en-tête à partir de fichiers de conception .ui), "rcc, le compilateur de ressources" (qui compile les ressources).
Rien ne vous empêche d'utiliser le système de construction de votre choix. Cependant, cela représente beaucoup plus de travail. Par exemple, vous devez exécuter "moc" sur chaque fichier d'en-tête qui contient une classe ayant des signaux ou des slots. En général, ce n'est pas recommandé, surtout pour quelqu'un qui commence à utiliser Qt.
QMake n'appelle pas directement g++/gcc. Au lieu de cela, qmake crée des fichiers make natifs sur votre plateforme actuelle. Sous linux, il crée des fichiers standards GNU make, sous Windows il peut générer des fichiers visual studio make, sous Mac OS X il peut générer des fichiers de projet XCode. Vous invoquez alors votre système de construction natif (soit GNU make, soit MS NMake, soit xcodebuild ou autre), qui appellera votre compilateur natif (g++/gcc ou autre).
24 votes
Vous vous méprenez,
qmake
est plutôt un remplacement pourconfigure
pasmake
1 votes
Si vous êtes familier avec les Imakefiles, votre fichier .pro de qt est un remplacement pour cela. Au lieu de créer un Makefile à partir de votre Imakefile, qmake crée un Makefile à partir de votre fichier .pro. (Il peut aussi générer le fichier .pro pour vous, bien que vous aurez parfois besoin d'ajouter à ses valeurs par défaut).