CMake-3.23.3

Introduction à CMake

Le paquet CMake contient un ensemble d'outils modernes utilisés pour générer des fichiers Makefile. C'est le successeur du script configure auto-généré et souhaite être indépendant de la plate-forme et du compilateur. Un utilisateur significatif de CMake est KDE depuis la version 4.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Informations sur le paquet

  • Téléchargement (HTTP) : https://cmake.org/files/v3.23/cmake-3.23.3.tar.gz

  • Téléchargement (FTP) :

  • Somme de contrôle MD5 : 152b841f6b3e3380373cd7af5ef44d57

  • Taille du téléchargement : 9,5 Mo

  • Estimation de l'espace disque requis : 344 Mo (plus 1,0 Go pour les tests)

  • Estimation du temps de construction : 2,0 SBU (plus 3,0 SBU pour les tests, en utilisant parallélisme = 4 pour les deux)

Dépendances de CMake

Requises

libuv-1.44.2

Recommandées

Facultatives

GCC-12.1.0 (pour gfortran), git-2.37.1 (utilisé pendant les tests), Mercurial-6.2.1 (utilisé pendant les tests), Qt-5.15.5 (pour l'interface graphique basée sur Qt), Subversion-1.14.2 (pour les tests), rhash etSphinx (pour construire la documentation)

Notes utilisateur : https://wiki.linuxfromscratch.org/blfs/wiki/cmake

Installation de CMake

Installez CMake en exécutant les commandes suivantes :

sed -i '/"lib64"/s/64//' Modules/GNUInstallDirs.cmake &&

./bootstrap --prefix=/usr        \
            --system-libs        \
            --mandir=/share/man  \
            --no-system-jsoncpp  \
            --no-system-librhash \
            --docdir=/share/doc/cmake-3.23.3 &&
make

Pour tester les résultats, lancez : LC_ALL=en_US.UTF-8 bin/ctest -j<N> -O cmake-3.23.3-test.log, où <N> est un entier entre 1 et le nombre de cœurs du système. Renseigner la variable d'environnement LC_ALL est nécessaire pour éviter certains échecs aux tests lorsque certaines variables linguistiques ne renseignent pas un paramètre linguistique anglais. Un test, RunCMake.CMP0125 est connu pour échouer.

Si vous voulez enquêter sur un problème avec un « problem1-test » donné, utilisez bin/ctest -R "problem1-test" et, pour l'omettre, utilisez bin/ctest -E "problem1-test". Ces options peuvent être utilisées ensemble : bin/ctest -R "problem1-test" -E "problem2-test". L'option -N peut être utilisée pour afficher tous les tests disponibles et vous pouvez lancer bin/ctest our un sous-ensemble de tests en utilisant des noms ou des nombres séparés par des espaces. Vous pouvez utiliser l'option --help pour afficher toutes les options.

Maintenant, en tant qu'utilisateur root :

make install

Explication des commandes

sed ... Modules/GNUInstallDirs.cmake : Cette commande empêche les applications utilisant cmake de tenter d'installer des fichiers dans /usr/lib64.

--system-libs : Ce paramètre oblige le système de construction à se lier à Zlib, Bzip2, cURL, nghttp2, Expat et libarchive installés sur le système.

--no-system-jsoncpp : Ce paramètre enlève la bibliothèque JSON-C++ de la liste des bibliothèques systèmes. Une version empaquetée de cette bibliothèque est utilisé à la place.

--no-system-librhash : Ce paramètre enlève la bibliothèque librhash de la liste des bibliothèques systèmes utilisées. Une version empaquetée de cette bibliothèque est utilisée à la place.

--qt-gui : Ce paramètre active la construction de l'interface graphique basée sur Qt pour CMake.

--parallel= : Ce paramètre permet d'effectuer le bootstrap CMake avec plusieurs tâches en même temps.

Contenu

Programmes installés: ccmake, cmake, cmake-gui (facultatif), cpack et ctest
Bibliothèques installées: Aucune
Répertoires installés: /usr/share/cmake-3.23 et /usr/share/doc/cmake-3.23.3

Descriptions courtes

ccmake

est une interface interactive pour cmake basée sur curses

cmake

est le générateur de makefile

cmake-gui

(facultatif) est l'interface basée sur Qt de cmake

cpack

est le programme d'empaquetage de CMake

ctest

est un outil de test des arborescences des constructions générées par cmake

Last updated on