Aperçu
CMake génère des scripts de build adaptés à l'outil de build choisi par l'utilisateur (par exemple, Make, Ninja) sur la base du fichier CMakeLists.txt qui définit le processus de build du code source. Ceci est essentiel pour standardiser et automatiser le processus de build de projets complexes.
Caractéristiques principales
- Support multiplateforme (Linux, Windows, macOS, etc.)
- Génération de divers systèmes de build (Makefiles, Visual Studio, Xcode, etc.)
- Gestion facile des projets modulaires
- Support des tests et du packaging (CTest, CPack)
Options principales
Voici les options couramment utilisées lors de l'exécution de la commande CMake.
Configuration de base
Générateur de système de build
Build et Installation
Informations
Commande générée :
Essayez de combiner les commandes.
Description:
`cmake` Exécute la commande.
Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.
Exemples d'utilisation
Voici divers scénarios pour configurer et construire des projets à l'aide de CMake.
Configuration de build de base et génération de Makefile
mkdir build
cd build
cmake ..
make
Génère un Makefile dans le sous-répertoire 'build' basé sur les sources du répertoire courant.
Spécification explicite des répertoires source et de build
cmake -S /path/to/my_project_source -B /path/to/my_project_build
Génère les fichiers de build en spécifiant clairement les répertoires source et de build.
Utilisation du générateur Ninja et build en mode Release
cmake -S . -B build -G Ninja -D CMAKE_BUILD_TYPE=Release
Génère les fichiers de build en utilisant le système de build Ninja et en définissant le type de build sur Release.
Exécution du build via CMake
cmake --build build
Exécute le build via la commande CMake au lieu d'appeler directement le système de build généré (par exemple, Makefile).
Installation du projet construit
cmake --install build
Installe le projet construit dans le chemin par défaut du système (par exemple, /usr/local).
Installation
CMake n'est pas fourni par défaut dans la plupart des distributions Linux, il doit donc être installé via le gestionnaire de paquets.
Debian/Ubuntu
sudo apt update
sudo apt install cmake
Installe CMake en utilisant le gestionnaire de paquets APT.
Fedora/RHEL/CentOS
sudo dnf install cmake
Installe CMake en utilisant le gestionnaire de paquets DNF ou YUM.
Arch Linux
sudo pacman -S cmake
Installe CMake en utilisant le gestionnaire de paquets Pacman.
Conseils et précautions
Voici des conseils et des points à considérer pour utiliser CMake efficacement.
Build hors source (Out-of-Source Build)
Il est toujours recommandé d'utiliser un build 'hors source' qui sépare le répertoire source du répertoire de build. Cela permet de garder le répertoire source propre et de passer facilement d'un paramètre de build à l'autre.
- Prévention de la contamination du répertoire source
- Gestion facile de plusieurs configurations de build (Debug/Release) simultanément
Fichier CMakeLists.txt
Le cœur de CMake est le fichier CMakeLists.txt, qui définit les règles de build du projet. Il est important de comprendre la syntaxe et la structure de ce fichier.
- Situé dans le répertoire racine du projet
- Peut également exister dans les sous-répertoires (inclus avec la commande add_subdirectory)
Utilisation des outils GUI
Pour les projets CMake complexes, vous pouvez utiliser des outils tels que `ccmake` (basé sur terminal) ou `cmake-gui` (basé sur graphique) pour configurer et gérer visuellement les variables de cache.
- `ccmake` : Configuration interactive des variables de cache dans le terminal
- `cmake-gui` : Configuration pratique avec une interface graphique