?? Version anglaise
Soufflez et changez "Mylib" en votre nom.
Ou générer votre projet à l'aide du script: https://github.com/izvolov/mylib-gen
L'assemblage de ce projet, comme tout autre projet sur le système d'assemblage CMake, se compose de deux étapes:
cmake -S путь/к/исходникам -B путь/к/сборочной/директории [опции ...]En savoir plus sur les options.
cmake --build путь/к/сборочной/директории [--target target]En savoir plus sur les objectifs d'assemblage.
cmake -S ... -B ... -DMYLIB_COVERAGE=ON [прочие опции ...] Comprend l'objectif de coverage , avec lequel vous pouvez commencer à mesurer le revêtement de code avec des tests.
cmake -S ... -B ... -DMYLIB_TESTING=OFF [прочие опции ...] Offre la possibilité de désactiver l'assemblage des tests modulaires et l'objectif de check . En conséquence, le code est désactivé par le revêtement de noyau avec des tests (voir revêtement).
Le test est également automatiquement déconnecté si le projet est connecté à un autre projet en tant que sous-projet à l'aide de la commande add_subdirectory .
cmake -S ... -B ... -DDOXYGEN_OUTPUT_LANGUAGE=English [прочие опции ...] Il change le langage de la documentation, qui est généré par l'objectif doc à un objectif donné. Pour une liste de langues accessibles, consultez le site Web du système Doxygen.
Par défaut, le russe est inclus.
cmake --build путь/к/сборочной/директории
cmake --build путь/к/сборочной/директории --target all Si l'objectif n'est pas indiqué (ce qui équivaut à l'objectif all ), recueille tout ce qui est possible et provoque également l'objectif check .
cmake --build путь/к/сборочной/директории --target mylib_library Compilé par la bibliothèque mylib_library . Inclus par défaut.
cmake --build путь/к/сборочной/директории --target mylib-unit-testsCompile des tests modulaires. Inclus par défaut.
cmake --build путь/к/сборочной/директории --target checkRunne les tests modulaires collectés (collectent, sinon). Inclus par défaut.
Voir aussi mylib-unit-tests .
cmake --build путь/к/сборочной/директории --target coverageAnalyse les tests modulaires avancés (lance, sinon) pour couvrer le code avec des tests à l'aide du programme GCOVR.
L'objectif est disponible uniquement avec l'option MYLIB_COVERAGE incluse.
Voir aussi check .
cmake --build путь/к/сборочной/директории --target docExécute la génération de documentation pour le code à l'aide du système Doxygen.
cmake --build путь/к/сборочной/директории --target wandboxPour cela, le service Wandbox est utilisé. N'abusez pas de cette chose, le serveur n'est pas en caoutchouc.
cmake -S путь/к/исходникам -B путь/к/сборочной/директории -DCMAKE_BUILD_TYPE=Debug -DMYLIB_COVERAGE=ON
cmake --build путь/к/сборочной/директории --target coverage --parallel 16cmake -S путь/к/исходникам -B путь/к/сборочной/директории -DMYLIB_TESTING=OFF -DCMAKE_INSTALL_PREFIX=путь/к/установойной/директории
cmake --build путь/к/сборочной/директории --target installcmake -S путь/к/исходникам -B путь/к/сборочной/директории -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER=g++-8 -DCMAKE_PREFIX_PATH=путь/к/директории/куда/установлены/зависимости
cmake --build путь/к/сборочной/директории --parallel 4cmake -S путь/к/исходникам -B путь/к/сборочной/директории -DCMAKE_BUILD_TYPE=Release -DDOXYGEN_OUTPUT_LANGUAGE=English
cmake --build путь/к/сборочной/директории --target docL'une des options d'utilisation du module est de l'installer dans le système.
cmake --build путь/к/сборочной/директории --target install Après cela, tout autre projet, appelant find_package , a l'occasion d'utiliser toutes les bibliothèques de l' Mylib::
find_package (Mylib 1.0 REQUIRED)
add_executable (some_executable some.cpp sources .cpp)
target_link_libraries (some_executable PRIVATE Mylib::library) La Mylib::library doit être connectée lorsque vous devez vous en tenir à la bibliothèque libmylib_library . S'il y a suffisamment de titres, il vaut la peine d'utiliser la Mylib::headers .
Le projet peut également être connecté à un autre projet en tant que sous-module à l'aide de la commande add_subdirectory .
Dans ce cas, Mylib::library et Mylib::headers seront disponibles de la même manière.
CMake 3.14
CMake 3.14 est requis car dans les versions précédentes, l' install(TARGETS ... EXPORT ...) fonctionne incorrectement dans les versions précédentes, à savoir les chemins par défaut ne sont pas prescrits.
Bibliothèque de tests de doctst
Les tests peuvent être désactivés (voir les tests).
Doxygène
Pour changer la langue dans laquelle la documentation sera générée, l'option DOXYGEN_OUTPUT_LANGUAGE est fournie.
Interprète Jap Python 3
Pour la génération automatique d'un sandwich en ligne.
Avec l'aide de Cmake et une paire de bons outils, vous pouvez fournir une analyse statique avec un minimum de mouvements corporels.
CMake a construit un support pour une analyse statique du CPPCHECK.
Pour ce faire, utilisez l'option CMAKE_CXX_CPPCHECK :
cmake -S путь/к/исходникам -B путь/к/сборочной/директории -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_CPPCHECK= " cppcheck;--enable=all;-Iпуть/к/исходникам/include "Après cela, l'analyse statique sera automatiquement lancée à chaque fois pendant la compilation et la compilation compilée de la source. Vous n'avez pas besoin de faire quoi que ce soit de plus.
À l'aide d'un merveilleux outil scan-build , vous pouvez également démarrer une analyse statique dans deux scores:
scan-build cmake -S путь/к/исходникам -B путь/к/сборочной/директории -DCMAKE_BUILD_TYPE=Debug
scan-build cmake --build путь/к/сборочной/директории Ici, contrairement au cas avec CPPCheck, il est nécessaire d'exécuter l'assemblage via scan-build à chaque fois.