Iniziare con Cmake e CPACK su Linux

Iniziare con Cmake e CPACK su Linux
“CMAKE è un insieme popolare e utile di strumenti a piattaforma multipla, che utilizzano i file di configurazione compilatori e indipendenti dalla piattaforma per costruire, testare e pacchetto progetti. Cmake è stato sviluppato come soluzione per uno spazio di costruzione multipiattaforma per progetti open source.

CPACK è uno strumento di imballaggio che è multipiattaforma e distribuita da Cmake. Tuttavia, può essere utilizzato indipendentemente da Cmake, ma utilizza concetti del generatore dello strumento CMake Suite.

Questa guida copre l'installazione e l'utilizzo di CMAKE e CPACK."

Come installare cmake

È possibile installare Cmake tramite la riga di comando o il centro software Ubuntu. In questo caso, lo installeremo tramite la riga di comando, ma è possibile controllare i metodi di installazione CMAKE completi per maggiori dettagli.

Innanzitutto, aggiorna il tuo repository.

$ sudo apt-get update

Quindi, immettere il comando qui sotto per installare Cmake.

$ sudo snap install cmake -Classic

Puoi confermare l'installazione controllando la sua versione.

$ cmake -version

Utilizzo di Cmake per configurare, costruire e eseguire il debug di un progetto C ++ su Linux

Cmake è popolare per la gestione delle build di codice per i progetti C ++, e lo fa con l'aiuto del Cmakelisti.TXT file per ogni directory. Definiscono le attività che il sistema di build dovrebbe intraprendere.

Nel nostro caso, scriveremo un semplice programma C ++ usando il codice Visual Studio e lo creeremo usando Cmake.

Assicurati di avere l'estensione C ++ Visual Studio installata, un debugger, preferibilmente GCC e CMAKE.

È possibile installare GCC utilizzando il comando:

$ sudo apt-get installa build-essenziale GDB

Per iniziare, creare una cartella di lavoro e aprirla nel codice Visual Studio.

$ mkdir cmademo
$ cd cmademo

Apri il codice Visual Studio

$ codice

Una volta che il codice Visual Studio si aprirà, apri la tavolozza digitando ctrl + shift + p

Per creare rapidamente i file cmake necessari, digita CMAKE: Inizio rapido e scegli l'opzione come nell'immagine qui sotto.

Se richiesto di scegliere tra Biblioteca E Eseguibile, Scegli eseguibili. Noterai due file, la funzione principale e i cmakelisti.TXT verrà creato.

È inoltre necessario selezionare un kit per informare CMake quale compilatore utilizzare.

Innanzitutto, controlla la versione GCC sul terminale. Sulla tavolozza, cerca il kit e scegli quello che corrisponde alla tua versione.

Nella parte inferiore della finestra, vedrai il kit selezionato. Nel nostro caso, lo è GCC 9.4.0 x86_64-Linux-GNU.

Cmake utilizza anche una variante che contiene istruzioni sulla costruzione del progetto. Ancora sulla tavolozza, digitare CMAKE: seleziona la variante. Ci sono quattro varianti tra cui scegliere.

  • Debug: Include i dettagli del debug, ma disabilita le ottimizzazioni.
  • Pubblicazione: Nessun dettaglio di debug, ma l'ottimizzazione viene inclusa.
  • Relwithdebinfo: Include informazioni di debug e ottimizza per le dimensioni.
  • Minsizel: Non include i dettagli del debug, ma ottimizza per dimensioni.

Nel nostro caso, abbiamo bisogno di informazioni di ottimizzazione e debug. Quindi, sceglieremo Debug.

Configurazione

Tutto è impostato. Apri la tavolozza e digita CMAKE: configura, Fare clic sul pulsante Invio e Cmake genererà i file di build e configurerà il progetto.

L'ultimo passo è costruire il progetto. Puoi farlo facendo clic su Costruire nella parte inferiore dello schermo o in esecuzione Cmake: build.

Questo è tutto! Hai utilizzato correttamente lo strumento CMake per configurare e creare il progetto.

In caso di errore con il progetto, esegui semplicemente il CMAKE: debug, e mostrerà dove si trova l'errore sul codice.

Cmake con cpack

Una volta configurato e creato un progetto come abbiamo fatto con Cmake, hai bisogno di un modo per costruire il software per renderlo instabile. Ciò di cui hai bisogno è un modo o uno strumento che ti consente di creare il progetto sulla macchina di sviluppo e creare un modulo che può essere trasferito e installato su un altro dispositivo. Questo è quello che fa Cpack.

Cpack creerà un installatore e un pacchetto per il progetto. Può creare pacchetti binari e di origine. La cosa buona è che CPACK supporta la creazione di installatori per OS X, RPMS, file ZIP, .catrame.GZ, pacchetti Debian, Windows e .sh.

CPACK funziona per creare un duplicato dell'albero di origine per il progetto e il file di catrame o zip e puoi trasferire il file su un'altra macchina e archiviarli nella directory corretta e far funzionare il progetto. Cpack svolge la maggior parte del lavoro, inclusa la creazione di una directory temporanea per il progetto e la copia dell'albero di installazione in un formato adatto per lo strumento di imballaggio.

Utilizzo di cpack con cmake

Poiché Cpack fa parte di Cmake, combinare i due è abbastanza facile. Nel nostro progetto C ++ usando Cmake, avevamo un cmakelisti.file txt creato. All'interno del file, esiste un supporto per CPACK che viene generato automaticamente, come mostrato.

Pertanto, la parte rimanente è generare installatori e pacchetti.

Per fare ciò, prima, navigare verso il costruire directory all'interno della directory del progetto. Nel nostro esempio, sarà:

$ cd cmademo/build

È possibile elencare i diversi file nella directory.

Per generare gli installatori, eseguire il comando:

$ cpack -c cpackconfig.cmake

È possibile notare i diversi generatori dall'output di seguito, incluso .catrame.Gz, .sh, e .catrame.z.

In alternativa, puoi eseguire il comando:

$ cpack -c cpacksourceconfig.cmake

Ora hai i pacchetti necessari per il tuo progetto.

Conclusione

CMake e CPACK sono strumenti utili per generare file di configurazione, costruzione, test e packaging. Ci sono tonnellate di opzioni che puoi usare con i comandi per ottenere cose diverse. Questa guida ha riguardato ciò che Cpack e Cmake sono, quindi è andato avanti per mostrare un utilizzo di esempio che configura e crea un progetto C ++ con Cmake e lo paccheggia con CPACK.