Maison >développement back-end >C++ >Comment puis-je personnaliser le répertoire de sortie de CMake pour les binaires et les plugins ?

Comment puis-je personnaliser le répertoire de sortie de CMake pour les binaires et les plugins ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-16 11:35:10497parcourir

How Can I Customize CMake's Output Directory for Binaries and Plugins?

Personnalisation du répertoire de sortie CMake pour les binaires et les plugins

Lors de la création de projets avec une structure de plugin à l'aide de CMake, il est souvent souhaitable de séparer les binaires compilés et les plugins du répertoire source. Cela permet une organisation plus propre et simplifie le projet.

Pour y parvenir dans CMake, vous pouvez exploiter la variable CMAKE_RUNTIME_OUTPUT_DIRECTORY. En définissant cette variable, vous pouvez spécifier un répertoire de sortie personnalisé dans lequel CMake enregistrera les exécutables et les bibliothèques dynamiques.

Par exemple, pour créer un répertoire "./bin" pour la sortie, vous définirez la variable comme suit dans le fichier racine CMakeLists.txt :

set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)

Cela demandera à CMake de placer tous les binaires compilés et bibliothèques dynamiques dans le répertoire spécifié. Il est important de noter que CMAKE_BINARY_DIR représente le répertoire dans lequel les fichiers CMake intermédiaires sont générés.

De plus, vous pouvez définir les répertoires de sortie cible par cible à l'aide de la fonction set_target_properties() :

set_target_properties( TARGET_NAME
    PROPERTIES
    RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
)

En personnalisant le répertoire de sortie, vous pouvez maintenir une structure de projet bien organisée et vous assurer que les binaires et plugins finaux se trouvent dans un emplacement désigné pour la distribution ou le traitement ultérieur.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn