CMake

CMake
software
Logo
Logo
output di CMake
output di CMake
output di CMake
GenereAutomazione dello sviluppo
SviluppatoreAndy Cedilnik, Bill Hoffman, Brad King, Ken Martin, Alexander Neundorf
Data prima versione2000
Ultima versione3.30.2 (2 agosto 2024)
Sistema operativoMultipiattaforma
LinguaggioC++
C
ToolkitQt
LicenzaBSD 3-clausole
(licenza libera)
Sito webcmake.org/
Modifica dati su Wikidata · Manuale

CMake è un software libero multipiattaforma per l'automazione dello sviluppo il cui nome è un'abbreviazione di cross platform make. Questo software nasce per rimpiazzare Automake nella generazione dei Makefile, cercando di essere più semplice da usare. Infatti, nella maggior parte dei progetti, non esiste un Makefile incluso nei sorgenti, dato che questo non è portabile.

Per la compilazione del programma è necessario verificare che siano incluse tutte le librerie e scovare i loro percorsi all'interno del file system. Proprio per questo motivo, è impossibile avere un Makefile già scritto.

A questo punto, il tool Automake, doveva eseguire una precisa ricerca di tali librerie e infine, se non si sono riscontrati errori, la definitiva creazione del Makefile per la successiva compilazione. Questo avveniva con:

./configure
make
make install

La creazione di un configure non è proprio facilissima. Proprio per questo interviene il nuovo sistema di generazione di Makefile: CMake.

Utilizzo

CMake è un tool molto modulare che, con poche e concise istruzioni, è in grado di generare Makefile a puntino. CMake dispone di una particolare sintassi comprensiva di moltissime macro e il loro utilizzo è possibile mediante un apposito file chiamato CMakeLists.txt.

Un tipico e semplicissimo esempio di CMakeLists.txt è il seguente:

cmake_minimum_required(VERSION 3.27)

project(matematica)

add_executable(matematica
    src/main.cpp
)

target_link_libraries(matematica
    Boost::boost
)

Per la generazione del Makefile e la successiva compilazione del progetto, è necessario eseguire i seguenti comandi:

 cmake -B build .
 cmake --build build

Il primo comando configura e genera gli script per effettuare la build del progetto, all'interno della directory build, il secondo fa partire la compilazione.

Mediante CMake si crea effettivamente un Makefile astratto, mentre la sua creazione concreta avviene nel particolare sistema operativo utilizzato.

Applicazioni che usano CMake

Voci correlate

Altri progetti

Altri progetti

  • Wikimedia Commons
  • Collabora a Wikimedia Commons Wikimedia Commons contiene immagini o altri file su CMake

Collegamenti esterni

  • (EN) Sito ufficiale, su cmake.org. Modifica su Wikidata
  • CMake, su packages.debian.org. Modifica su Wikidata
  • Repository sorgenti di CMake, su gitlab.kitware.com. Modifica su Wikidata
  • Sito di segnalazione bug, su gitlab.kitware.com. Modifica su Wikidata
  • (EN) CMake, su Free Software Directory. Modifica su Wikidata
  • Perché il progetto KDE è passato a CMake — e come, su lwn.net.
  Portale Software libero: accedi alle voci di Wikipedia che trattano di Software libero