Redirection des sorties de CMake Build vers un répertoire « bin »
Lors de la création de projets avec des plugins à l'aide de CMake, les binaires et bibliothèques compilés sont généralement dispersés dans la structure du répertoire source. Pour organiser ces fichiers, il devient nécessaire de diriger la sortie de CMake vers un répertoire distinct, tel que './bin'.
La solution réside dans la définition de la variable CMake appropriée pour spécifier le chemin de sortie souhaité. Suivant les conseils d'Oleg, la variable correcte à modifier est CMAKE_RUNTIME_OUTPUT_DIRECTORY.
Dans le fichier racine CMakeLists.txt, vous pouvez spécifier le répertoire de sortie comme suit :
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
Cela définira les répertoires de sortie pour les archives, les bibliothèques et les binaires d'exécution vers un sous-répertoire 'lib' et un sous-répertoire 'bin' dans le binaire répertoire.
Vous pouvez également spécifier les répertoires de sortie pour chaque cible à l'aide de la commande set_target_properties :
set_target_properties(targets... PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" )
Cette approche vous permet de spécifier différents répertoires de sortie pour différentes cibles, fournissant contrôle plus précis sur le processus de construction.
Dans les deux cas, vous pouvez ajouter '_[CONFIG]' à la variable ou à la propriété name pour définir le répertoire de sortie pour une configuration spécifique. Les valeurs de configuration standard sont DEBUG, RELEASE, MINSIZEREL et RELWITHDEBINFO.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!