Comment automatiser moc Qt?
Question
Je dois exécuter les commandes suivantes de l'invite de commandes Qt: qmake -project
alors make
et cela me donne le dossier de débogage avec le fichier Moc
.
Ceci est étrangement la seule façon dont mon PC va générer le fichier moc_.cpp
.
Alors, comment puis-je automatiser la tâche de ces commandes, donc je ne dois pas utiliser ces commandes à nouveau?
La solution
Vous ne devez pas exécuter qmake -project
plusieurs fois. L'option -project
est destiné à vous fournir un fichier de projet de modèle pour vous d'éditer. Un équivalent de ce que vous faites dans un IDE serait de créer un « nouveau projet » chaque fois que vous voulez construire. Une fois que vous avez le projet initial, vous devez modifier les fichiers, ajouter manuellement lorsque vous avez de nouveaux fichiers, etc. Si certaines modifications du fichier d'en-tête, le Makefile remarqueront et appelez moc sur elle pour mettre à jour le moc _ *. Fichier cpp automatiquement. Donc:
- Exécuter
qmake -project
lorsque vous commencez à travailler sur un projet. - Exécuter
qmake
lorsque vous voulez générer Makefile. - Exécuter
make
quand vous voulez construire le projet.
Autres conseils
Je suppose que vous avez deux choix.
-
appel qmake d'un processus et faire des parents compilons à plusieurs niveaux. ( "Make récursif".)
-
exécuter directement le compilateur méta-objet de règles dans votre makefile
Si la seconde, cette page sur utilisant le compilateur méta-objet peut aider .