cmake RUNTIME_OUTPUT_DIRECTORY sous Windows
Je suis en utilisant cmake pour la gestion de mon cross-plate-forme s'appuie, et j'ai tout a bien fonctionné sauf pour ce problème. J'ai mis RUNTIME_OUTPUT_DIRECTORY
à un bin/
répertoire où j'ai des fichiers de données stockés. Sur Linux, cela fonctionne bien. Sur Windows, les fichiers exécutables sont placés dans le Debug
/Release
sous-répertoire en fonction du type de build. Est-il possible de l' cmake pour copier le fichier exécutable dans le répertoire approprié, ou (encore mieux) cesser d'utiliser ces sous-répertoires?
source d'informationauteur thekidder
Vous devez vous connecter pour publier un commentaire.
J'ai été en utilisant l'amende préfixe propriété hack rapporté par Ogapo pendant des années. Elle fonctionne.
Mais aussi de CMake la version 2.8, il y a l'appui officiel pour éviter la Release/Debug sous-répertoires de Windows.
Utiliser le mondial
CMAKE_<ARTIFACT>_OUTPUT_DIRECTORY_<CONFIGURATION>
variables, ou de la per-cible<ARTIFACT>_OUTPUT_DIRECTORY_<CONFIGURATION>
propriétés, comme suit:Je ne suis pas sûr si ces répertoires sont intentionnels ou un bug, mais au risque d'en avant l'incompatibilité vous pourriez ajouter:
ce travail a été pour moi
J'ai trouvé quelques bonnes discussions sur ce sujet:
http://www.cmake.org/pipermail/cmake/2008-April/021355.html
http://www.vtk.org/Bug/bug_view_advanced_page.php?bug_id=8366
Serait-il possible d'utiliser le obsolète EXECUTABLE_OUTPUT_PATH au lieu de RUNTIME_OUTPUT_DIRECTORY? Je ne suis pas sûr de ce que la fonctionnalité a changé entre les 2, mais il pourrait être la peine d'essayer.
Certaines variables cmake ont construire des versions spécifiques.
Je n'ai pas vérifié ces vars, mais peut-être mettre en
RUNTIME_OUTPUT_DIRECTORY_DEBUG
&&RUNTIME_OUTPUT_DIRECTORY_RELEASE
à la même chose.Jusqu'à présent, la meilleure réponse que j'ai trouvé est d'écrire tout simplement CMake installer des commandes pour chacun de mes objectifs et de fichiers de données et mettre en place le MSVC débogueur à courir sur le répertoire d'installation. Ceci a l'avantage supplémentaire de l'utilisation de CPack pour la création de programmes d'installation.
Pour moi un mondial:
a fait le travail, donc je n'ai pas à le définir pour chaque bibliothèque (CMake 2.8.4)
Vous avez besoin de changer l'emplacement de génération de vos projets visual studio. Allez à Propriétés de Projet et sur l'onglet Compiler spécifier le 'Build chemin de sortie" pour être partout où vous le souhaitez.
Note
Ne sais pas comment pertinents, c'est que je ne sais pas à propos de CMake.
Vous pouvez utiliser le jeton suivant dans Visual Studio construire des événements:
$(TargetPath)
Ce sera le chemin de l'emplacement que votre projet est construit selon les paramètres de votre projet, ce sera soit le Debug ou Release dossier.