Qt, Qbs:générer moc_Filename.cpp automatiquement
Question
Donc, j'ai une macro q_object tagged classe, ce qui nécessite préfabriqués .moc pour être utilisable.
Dans mon .qbs fichier, j'ai un CppApplication
élément;cela semble être le mauvais type de projet, comme qbs ne pas appeler moc ClassName.cpp
pour générer de la cgpm pour moi.Ce qui devrait être utilisé à la place/tordu?
-
Donc je savais à propos de Qt.de base de la dépendance, mais il ne fonctionnait pas sur mon paralysé installation de Qt;alors que j'essayais de le fixer, de ces faits est venu:
- Il était nécessaire pour la détection de l'intervalle Qt de la chaîne d' (
qbs-setup-qt
) et appelqbs-config-ui
- Qbs en effet, les magasins de la construire des règles de base.qbs, lié via Qt/core dépendance.
- il est possible de copier/coller les règles de génération en mes propres .qbs de fichiers et d'éviter les dépendances externes;Je suis en train d'étudier comme un sale hack pour le déploiement du code sur vraiment paralysé de construire des systèmes (maintenant, j'ai un mot pour Qt appui sur Gentoo).
La solution
Je pense que vous pourriez être à côté de la dépendance de l'application sur l'intervalle Qt-modules.La règle pour la génération de la circulation thermohaline de fichiers est une partie de l'intervalle Qt.module de base.Vous pouvez ajouter cette dépendance avec:
CppApplication {
name: "MyApp"
files: "path_to_source/**"
Depends { name: "Qt.core" } // Optional
Depends { name: "Qt.widgets" }
}
Comme tous les autres modules de Qt ont implicite de la dépendance sur l'intervalle Qt.de base de l'explicite à la dépendance sur l'intervalle Qt.core peut être ignoré si il y a une dépendance sur un autre Qt-module (Qt.les widgets dans cet exemple).
Plus de détails peut être trouvé à http://doc.qt.io/qbs/qt-modules.html