Je suis assez nouveau à Qt, et j'utilise le nouveau Nokia Qt SDK Beta et je travaille à développer une petite application pour mon Nokia N900 dans mon temps libre.
Heureusement, j'ai pu tout configurer correctement, et aussi exécuter mon application sur l'appareil.
J'ai appris C ++ à l'école, alors je pensais que ce ne sera pas si difficile.
J'utilise Qt Creator comme IDE, car cela ne fonctionne pas avec Visual Studio. P>
Je souhaite également porter mon application à Symbian, alors j'ai géré l'émulateur plusieurs fois, et je compile également pour Windows pour déboguer les bugs les plus diaboliques. (Le débogueur ne fonctionne pas correctement sur l'appareil.) P>
Je viens d'un fond .NET, donc il y a des choses que je ne comprends pas. P>
Quand je frappe Le bouton de construction, QT Creator génère un tas de fichiers dans mon répertoire de projet: P>
moc _ *. CPP code> fichiers - je ne connais pas leur but. Est-ce que quelqu'un pourrait me dire? Li>
-
*. o code> fichiers - je suppose que ce sont le code d'objet li>
-
*. RSS code> Fichiers - Je ne connais pas leur but, mais ils n'ont certainement rien à voir avec RSS LI>
-
Makefile code> et makefile.debug code> - je n'ai aucune idée li>
-
AppName code> (sans extension) - L'exécutable pour maténo et appName.sis code> - L'exécutable pour Symbian, je suppose? LI>
-
appname.loc code> - je n'ai aucune idée li>
-
appname_installer.pkg code> et appname_template.pkg code> - je n'ai aucune idée li>
-
qrc_resources.cpp code> - Je suppose que c'est pour mes ressources QT li>
ul> (où appname code> est le nom de l'application en question) p> J'ai remarqué que ces fichiers peuvent être supprimés en toute sécurité, QT Creator les régénère tout simplement. < BR>
Le problème est qu'ils polluent mon répertoire source. Surtout parce que j'utilise la version contrôle, et si elles peuvent être régénérées, il n'est pas question de les télécharger à SVN. P>
Alors, pourrait-on me dire quel est le but exact de ces fichiers et comment peut-on Je demande à Qt Creator de les placer dans un autre répertoire? P>
Edit: strong> P> Il semble que j'ai appris plus à partir des réponses de cette question que je ne le pensais voudrais. :)
Gros merci à tous ceux qui m'ont aidé. J'ai donné à chacun une uppote, parce que je pouvais apprendre quelque chose de nouveau de toutes les réponses. P>
En fait, quelle robinette recommandée semble être la solution la plus pratique, mais j'ai marqué la réponse de Kotti acceptée, car il m'a fourni le meilleur explication sur la façon dont le mécanisme de construction de QT fonctionne. p>
la solution: strong> p> Il semble que ni la maténo ni la boîte à outils Symbian ne soutiennent encore la construction d'ombres. J'utilise ceux-ci dans mon fichier de projet pour résoudre la situation: p> xxx pré> p>
4 Réponses :
Pas une réponse complète à votre question, mais juste une partie de cela :) aussi, c'est Googlable. P>
Devinez que si vous développez en C ++, vous devez savoir ce que signifie Comparaison du système de construction C ++ sur le système de construction QT, vous pouvez voir que le système de construction C ++ (les boîtes grises) est laissée non modifiée. Nous construisons toujours le code C ++ ici. Cependant, nous ajoutons plus de sources et d'en-têtes. Il y a trois générateurs de code impliqués ici: P>
Le compilateur d'interface utilisateur (UIC dans l'illustration) strong> - Le compilateur d'interface utilisateur prend des conceptions de designers et crée des fichiers d'en-tête. Ces fichiers d'en-tête sont ensuite inclus dans les fichiers source comme d'habitude, permettant d'appeler setupui pour instanquer une conception d'interface utilisateur. P>
Le compilateur de ressources QT (RCC dans l'illustration) strong> - Le compilateur de ressources est quelque chose que nous n'avons pas encore parlé. Il permet d'intégrer des images, des fichiers texte, etc. dans votre exécutable, mais toujours pour y accéder en tant que fichiers. Nous examinerons cela plus tard, je veux juste l'inclure dans cette image où elle appartient. P>
J'espère que cette illustration clarifie ce que QT fait vraiment pour ajouter de nouveaux beaux mots-clés à C ++. Si vous êtes curieux - n'hésitez pas à lire certains des fichiers générés. Ne les modifiez pas - ils sont régénérés à chaque fois que vous construisez votre application. P>
Si vous utilisez QTCreator, les fichiers MOC sont générés dans les sous-répertoires de votre projet de débogage et de libération de votre répertoire de projet. Les fichiers UIC sont stockés à la racine du répertoire de projet. Les fichiers RCC sont généralement ennuyeux, mais je suis sûr que vous pouvez les trouver dans votre répertoire de projet Hierarcy quelque part. P>
Edit: Vous n'avez pas à inclure ces fichiers dans votre SVN. Ceci est plutôt la même merde que de commiter Makefile code> Stand for. De plus, je pense que le fichier
.loc code> est généralement un fichier avec des chaînes / contenus localisées. P>
(Source: THELINS.SE ) SUB> P>
.ncb code>,
.pdb code> et d'autres fichiers temporaires. Chaque fois que vous modifiez quelque chose dans votre application QT, ces fichiers temporaires sont régénérés comme une mise à jour de vos modifications. Il n'est donc pas logique de les engager à SVN. P>
@Kotti - merci beaucoup! Cependant, ils sont vraiment tous placés dans le répertoire racine de mon projet. Je serais heureux si je pouvais l'obtenir de les placer dans un de débogage code> ou
bac code>.
Comme je me souviens de la façon dont j'ai fait des choses Qt (j'ai utilisé Visual Studio + QT), une fenêtre de réglages a été utilisée dans laquelle vous pouvez spécifier où placer ces fichiers générés. Dans mon cas, il a été défini sur GeneratedFiles code> et je n'y ai même pas pensé. Je suis à peu près sûr qu'il devrait y avoir le même commutateur dans Qt Creator. En outre, pourquoi avez-vous dit que qt ne fonctionne pas avec vs?
@Kotti - Je dis parce que ça ne marche pas. Cela ne me permet pas de créer un nouveau projet. Peut-être qu'il est gâché par une extension vs. Mais cela n'a pas d'importance, car je ne pense pas qu'il soit possible de déménager pour des appareils mobiles avec elle. (Au moins, je n'ai pas pu trouver de ressources à ce sujet.)
@Kotti - Astuce: Si vous commencez votre commentaire avec @venemo code>, cela vous informera donc que j'ai une nouvelle réponse. :)
@Venemo je doute aussi que ce soit possible. Quoi qu'il en soit, l'intégration QT dans Visual Studio est extrêmement convinie, du moins pour moi, alors je peux même dire que cela vaut vraiment la peine de réinstaller le studio visuel et de passer beaucoup de temps afin de le faire fonctionner. En outre, merci de pointer sur ce @ code> astuce :)
@Kotti - J'ai à la fois VS 2008 et VS 2010, donc pas besoin de réinstaller ... Je suis un .Net Dev surtout, c'est pourquoi j'ai de telles questions noobaines sur Qt. :)
N'essayez pas d'obtenir les fichiers stockés dans un autre répertoire; Dites plutôt à Subversion de les ignorer, comme expliqué à La plupart des systèmes de contrôle des sources ont un bon support pour ignorer les fichiers générés, car il s'agit d'un problème touché par presque tous les logiciels. P>
Vous pouvez dire qmake (et donc qtcreator) de mettre les fichiers générés ailleurs en ajoutant ce qui suit à votre fichier .Pro pour le projet Ceci mettrait tous les fichiers d'interface utilisateur dans le. Répertoire UI, fichiers MOC dans le directeur .MOC et tous les fichiers .O dans le répertoire .OBJ. (Bien sûr, vous pouvez les changer comme vous le souhaitez) P> L'aide correspondante pour QMake est à:
http://doc.qt.io/archives/ 4.6 / qmake-variable-référence.html # moc-dir p> p>
Si vous utilisez des constructions de Shadow (activées par défaut dans le QT Creator 2.0 Beta A>) Alors tous ces fichiers temporaires sont créés dans un dossier séparé. Par exemple: très utile IMHO. P> P>
Merci, je vais vérifier. Ce sera bizarre que j'aurai 3 versions différentes de Qt Creator. : P
J'ai découvert que Qt Creator V.1.3.83, qui se trouve dans Nokia QT SDK par défaut, est identique à 2.0 bêta 1. Néanmoins, ces fichiers sont créés dans le dossier source. Pourriez-vous s'il vous plaît dites-moi où activer le réglage dont vous parlez?
Sélectionnez la vue Projets, puis la page de construction. Les réglages de construction de l'ombre doivent être là-là - il peut s'agir d'être activé mais que l'emplacement du dossier est identique au projet.
Merci! Je l'ai trouvé. Le problème suivant est: "Le bâtiment dans les sous-répertoires du répertoire source n'est pas pris en charge par QMake." Mais je pense que je peux me contourner celui-ci.
Cela peut prendre des recherches, mais vous devriez être capable de trouver un moyen de faire passer ces fichiers ailleurs. (Nous construisons des applications QT mais n'utilisez pas qmake, donc je ne peux donc pas vous donner des détails pour cela; Je sais juste que les outils mettront les fichiers où que vous sachiez.)
@ Dash-Tom-Bang - Je suis curieux, quel outil utilisez-vous pour compiler et construire, sinon qmake?
Un outil interne dérivé de la confiture.