Je démarre un projet multiplateforme (Win Xp, Linux) qt. Je veux utiliser une sortie de construction source donc ma structure de répertoire est comme suit:Inclure des problèmes lors de l'utilisation de CMake avec Gnu sur le projet Qt
project/
CMakeLists.txt (global CMake file, includes other CMakeLists)
build/ (my build directory)
libA/
CMakeLists.txt
mystuff/
subprojectA/
CMakeLists.txt
subprojectB/
CMakeLists.txt
Alors, quand j'utiliser sur Windows avec le générateur Visual Studio tout se construit bien. Si j'utilise la même structure et CMakeLists sous Linux ou sous Windows avec le générateur MinGW, j'obtiens des erreurs de compilation car les fichiers qt générés (via moc et uic) situés dans le répertoire build ne trouvent pas mes fichiers d'en-tête dans mes sous-projets. Certains des fichiers d'en-tête/source générés par qt dépendent de mes fichiers d'en-tête/source parce que j'utilise des widgets promus dans mes fichiers .ui qui pointent vers l'implémentation dans ma source. Encore une fois sous Visual Studio/NMake tout compile bien.
Pour contourner ce problème, je peux utiliser une source de construire dans ce qui fonctionne bien ou je peux ajouter ce qui suit sur la CMakeLists.txt mondiale:
include_directories(
mystuff/subprojectA
mystuff/subprojectB
)
Mais quelle est la bonne solution? Merci beaucoup!!
hey cool ça marche pour moi! pas la réponse parfaite mais une bonne solution de contournement, merci! –