48Fermer50
deleted2Le 08/05/2015 à 10:20
*** FORK (manuel) DU THREAD VERS KDEVELOP ***

Hier, j'ai voulu builder mon projet Qt (écrit et construit avec Creator/Designer depuis le début, sans aucun problème) à partir de KDevelop.
J'ai donc utilisé le template de projet Qt.
Je pensais devoir écrire toute la partie CMake à la main (très bon exercice), mais il se trouve que j'ai eu tout un paquet de fichiers liés à CMake dans le répertoire de build :!folco@Foch:/mnt/Data/prog/TBL2/TBL/build$ ls -R .: CMakeCache.txt CMakeFiles ./CMakeFiles: 3.0.2 cmake.check_cache CMakeOutput.log CMakeTmp ./CMakeFiles/3.0.2: CMakeCCompiler.cmake CMakeDetermineCompilerABI_C.bin CMakeSystem.cmake CompilerIdCXX CMakeCXXCompiler.cmake CMakeDetermineCompilerABI_CXX.bin CompilerIdC ./CMakeFiles/3.0.2/CompilerIdC: a.out CMakeCCompilerId.c ./CMakeFiles/3.0.2/CompilerIdCXX: a.out CMakeCXXCompilerId.cpp ./CMakeFiles/CMakeTmp:
Idéalement, j'aurais voulu écrire moi-même mon fichier CMakeList.txt, mais je suis incapable d'écrire tous les fichiers que j'ai trouvés.
Ma question : qu'est-ce que tous ces fichiers ? Des fichiers temporaires auto-générés par CMake à partir du CMakeList.txt, ou alors des fichiers créés par le template et absolument nécessaires à mon projet .
Dans ce dernier cas, je serais bien incapable de les écrire à la main, donc adieu mon idée de compiler mon projet "by hand" pour bien comprendre la compilation d'un projet Qt. sad

Dernière chose, CMake est par définition cross-plateforme, tous les fichiers dont il est question sont-ils un obstacle à la compilation sous un autre OS (je ne parle pas de cross-compilation) ?

Merci d'avance. happy


edit -> ah, bonus :
- j'ai vu que uic sert à transformer les .ui en .h, inclus dans les .h(pp) de la classe qui les contient.
- j'ai vu aussi que moc est une moulinette qui doit être passée sur tous les fichiers contenant la macro Q_OBJECT. Je sais pas trop comment dire ça à CMake mais je vais trouver.
- par contre, qmake, j'arrive pas à situer cet outil : c'est encore un autre outils pour remplacer [fixed]make/cmake/makefile[fixed] ? est-ce un outil nécessaire pour builder un projet Qt ? J'ai parcouru sa doc, le langage a l'air clair et facile, mais ça n'en reste pas moins un nouveau langage à apprendre, quoi...