Début avec Cmake et CPACK sur Linux

Début avec Cmake et CPACK sur Linux
«CMake est un ensemble d'outils de plate-forme multiplateforme populaire et utile qui utilise des fichiers de configuration indépendants du compilateur et de la plate-forme pour créer, tester et package des projets. CMake a été développé comme la solution pour un espace de construction multiplateforme pour les projets open source.

CPACK est un outil d'emballage qui est multiplateforme et distribué par CMake. Cependant, il peut être utilisé indépendamment de CMake, mais il utilise des concepts de générateur à partir de l'outil CMake Suite.

Ce guide couvre l'installation et l'utilisation de Cmake et CPACK."

Comment installer Cmake

Vous pouvez installer Cmake via la ligne de commande ou le centre logiciel Ubuntu. Dans ce cas, nous l'installerons via la ligne de commande, mais vous pouvez vérifier les méthodes d'installation complètes CMake pour plus de détails.

Tout d'abord, mettez à jour votre référentiel.

$ sudo apt-get updat

Ensuite, entrez la commande ci-dessous pour installer Cmake.

$ sudo snap installer cmake --classic

Vous pouvez confirmer l'installation en vérifiant sa version.

$ cmake --version

Utilisation de CMake pour configurer, créer et déboguer un projet C ++ sur Linux

CMake est populaire pour gérer les builds de code pour les projets C ++, et il le fait avec l'aide du Cmakelists.SMS Fichiers pour chaque répertoire. Ils définissent les tâches que le système de construction devrait entreprendre.

Dans notre cas, nous rédigerons un simple programme C ++ en utilisant le code Visual Studio et le construire en utilisant CMake.

Assurez-vous que l'extension C ++ Visual Studio est installée, un débogueur, de préférence GCC et CMake.

Vous pouvez installer GCC en utilisant la commande:

$ sudo apt-get install build-essentiel gdb

Pour commencer, créez un dossier de travail et ouvrez-le dans Visual Studio Code.

$ mkdir cmakemo
$ cd cMakemo

Open Visual Studio Code

$ code

Une fois le code Visual Studio Open, ouvrez la palette en tapant ctrl + shift + p

Pour créer rapidement les fichiers Cmake nécessaires, tapez CMake: démarrage rapide et choisissez l'option comme dans l'image ci-dessous.

Si vous êtes invité à choisir entre Bibliothèque et Exécutable, Choisissez exécutable. Vous remarquerez deux fichiers, la fonction principale et les CMakelists.txt sera créé.

Vous devez également sélectionner un kit pour informer CMake quel compilateur utiliser.

Tout d'abord, vérifiez votre version GCC sur le terminal. Sur la palette, recherchez un kit et choisissez celui qui correspond à votre version.

En bas de la fenêtre, vous verrez le kit sélectionné. Dans notre cas, c'est GCC 9.4.0 x86_64-linux-gnu.

CMake utilise également une variante qui contient des instructions sur la construction du projet. Toujours sur la palette, tapez CMake: variante sélectionnée. Il y a quatre variantes à choisir.

  • Déboguer: Il comprend les détails de débogage, mais il désactive les optimisations.
  • Libérer: Aucun détail de débogage, mais l'optimisation est incluse.
  • Relwithdebinfo: il comprend des informations de débogage et optimise la taille.
  • Minsizerel: Il n'inclut pas les détails du débogage, mais il optimise la taille.

Dans notre cas, nous avons besoin d'informations d'optimisation et de débogage. Alors, nous choisirons Déboguer.

Configuration

Tout est défini. Ouvrez la palette et le type Cmake: configurer, Cliquez sur le bouton Entrer et CMake générera les fichiers de construction et configurera le projet.

La dernière étape consiste à construire le projet. Vous pouvez le faire en cliquant sur le Construire en bas de l'écran ou en cours d'exécution CMake: construire.

C'est ça! Vous avez réussi à utiliser l'outil CMake pour configurer et construire le projet.

En cas d'erreur avec le projet, exécutez simplement le Cmake: débogue, Et cela montrera où se trouve l'erreur sur le code.

Cmake avec cpack

Une fois que vous avez un projet configuré et construit comme nous l'avons fait avec CMake, vous avez besoin d'un moyen de construire le logiciel pour le rendre installable. Ce dont vous avez besoin est un moyen ou un outil qui vous permet de construire le projet sur votre machine de développement et de créer un formulaire qui peut être transféré et installé sur un autre appareil. C'est ce que fait CPACK.

CPACK créera un installateur et un package pour le projet. Il peut créer des packages binaires et source. La bonne chose est que CPACK prend en charge la création d'installateurs pour OS X, RPM, fichiers ZIP, .le goudron.GZ, packages Debian, fenêtres et .shot.

CPACK s'efforce de créer un double de l'arborescence source pour le projet et le fichier TAR ou ZIP, et vous pouvez transférer le fichier dans une autre machine et les stocker dans le répertoire correct et faire fonctionner votre projet. CPACK fait la plupart des travaux, y compris la création d'un répertoire temporaire pour le projet et la copie de l'arborescence d'installation dans un format approprié pour l'outil d'emballage.

Utilisation de CPACK avec Cmake

Puisque CPACK fait partie de CMake, la combinaison des deux est assez facile. Dans notre projet C ++ en utilisant Cmake, nous avions un CMAKELISTS.Fichier txt créé. À l'intérieur du fichier, il y a une prise en charge de CPACK qui est générée automatiquement, comme indiqué.

Par conséquent, la partie restante consiste à générer les installateurs et les packages.

Pour ce faire, d'abord, accédez à construire Répertoire à l'intérieur du répertoire du projet. Dans notre exemple, ce sera:

$ CD CMAKEDemo / build

Vous pouvez répertorier les différents fichiers du répertoire.

Pour générer les installateurs, exécutez la commande:

$ cpack -c cpackconfig.cmake

Vous pouvez noter les différents générateurs de la sortie ci-dessous, y compris .le goudron.gz, .sh, et .le goudron.z.

Alternativement, vous pouvez exécuter la commande:

$ cpack -c cpacksourceconfig.cmake

Vous avez maintenant les forfaits nécessaires pour votre projet.

Conclusion

CMake et CPACK sont des outils utiles pour générer des fichiers de configuration, des projets de construction, de test et d'emballage. Il y a des tonnes d'options que vous pouvez utiliser avec les commandes pour réaliser différentes choses. Ce guide couvrait ce que CPACK et CMake sont, puis sont allés de l'avant pour montrer un exemple d'utilisation qui configure et construit un projet C ++ avec CMake et le packages avec CPACK.