Maison >développement back-end >C++ >Comment configurer CMake pour séparer les binaires et les bibliothèques du code source ?

Comment configurer CMake pour séparer les binaires et les bibliothèques du code source ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-17 14:09:10707parcourir

How to Configure CMake to Separate Binaries and Libraries from Source Code?

Comment configurer le répertoire de sortie CMake pour les binaires

Pour résoudre le problème où CMake génère des binaires et des bibliothèques dans la hiérarchie du répertoire source, vous pouvez modifier les paramètres de sortie de CMake pour spécifier une destination dédiée répertoire.

Solution :

Pour demander à CMake de placer les artefacts compilés dans un répertoire séparé comme "./bin", utilisez les techniques suivantes :

  1. Production globale Répertoires :

    set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
    set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
    set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
  2. Répertoires de sortie spécifiques à la cible :

    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"
    )

Dans les deux scénarios , vous pouvez ajouter "_[CONFIG]" (par exemple, "_DEBUG") au nom de la variable ou de la propriété pour personnaliser la sortie répertoire pour une configuration particulière (par exemple, "Debug").

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