Spec-Zone.ru › CMake 3.16

cmake(1)

Синопсис

Generate a Project Buildsystem
 cmake [<options>] <path-to-source>
 cmake [<options>] <path-to-existing-build>
 cmake [<options>] -S <path-to-source> -B <path-to-build>

Build a Project
 cmake --build <dir> [<options>] [-- <build-tool-options>]

Install a Project
 cmake --install <dir> [<options>]

Open a Project
 cmake --open <dir>

Run a Script
 cmake [{-D <var>=<value>}...] -P <cmake-script-file>

Run a Command-Line Tool
 cmake -E <command> [<options>]

Run the Find-Package Tool
 cmake --find-package [<options>]

View Help
 cmake --help[-<topic>]

Описание

Исполняемый файл cmake является командной строкой генератора кроссплатформенной системы сборки CMake. Вышеприведённый Синопсис перечисляет различные действия, которые может выполнять инструмент, как описано в разделах ниже.

Для сборки программного проекта с помощью CMake, сгенерируйте систему сборки проекта. Дополнительно используйте cmake для сборки проекта, установки проекта или просто запуска соответствующего инструмента сборки (например, make) напрямую. cmake также можно использовать для просмотра справки.

Другие действия предназначены для использования разработчиками программного обеспечения, пишущими скрипты на языке CMake language для поддержки своих сборок.

Для графических пользовательских интерфейсов, которые могут использоваться вместо cmake, см. ccmake и cmake-gui. Для командных строк для средств тестирования и пакетирования CMake см. ctest и cpack.

Для получения дополнительной информации о CMake в целом, см. ссылки в конце этого руководства см. также.

Введение в системы сборки CMake

Система сборки описывает, как с помощью инструмента сборки создать исполняемые файлы и библиотеки проекта из исходного кода, автоматизируя этот процесс. Например, система сборки может быть Makefile для использования с make инструментами командной строки или файлом проекта для интегрированной среды разработки (IDE). Чтобы избежать необходимости поддерживать несколько таких систем сборки, проект может указать свою систему сборки абстрактно, используя файлы, написанные на языке CMake language. Из этих файлов CMake генерирует предпочтительную систему сборки локально для каждого пользователя через бэкенд, называемый генератором.

Для генерации системы сборки с помощью CMake необходимо выбрать следующее:

Дерево исходного кода

Верхнеуровневая директория, содержащая исходные файлы, предоставленные проектом. Проект определяет свою систему сборки, используя файлы, как описано в руководстве cmake-language(7), начиная с верхнеуровневого файла, названного CMakeLists.txt. Эти файлы определяют целевые сборки и их зависимости, как описано в руководстве cmake-buildsystem(7).

Дерево сборки

Верхнеуровневая директория, в которой хранятся файлы системы сборки и артефакты выходных данных сборки (например, исполняемые файлы и библиотеки). CMake запишет файл CMakeCache.txt для идентификации директории как дерева сборки и сохранит постоянную информацию, такую как параметры конфигурации системы сборки.

Чтобы сохранить чистоту дерева исходного кода, выполните внедрениую сборку, используя отдельное выделенное дерево сборки. Также поддерживается встроенная сборка, в которой дерево сборки размещается в той же директории, что и дерево исходного кода, но это не рекомендуется.

Генератор

Это выбирает тип системы сборки для генерации. Смотрите руководство cmake-generators(7) для документации по всем генераторам. Запустите cmake --help для просмотра списка доступных локально генераторов. Дополнительно используйте опцию -G ниже для указания генератора или просто примите значение по умолчанию, которое выбирает CMake для текущей платформы.

При использовании одного из Генераторов инструмента сборки командной строки CMake ожидает, что среда, необходимая для инструментальной цепочки компилятора, уже настроена в оболочке. При использовании одного из Генераторов инструмента сборки IDE никакая особая среда не нужна.

Генерация системы сборки проекта

Запустите CMake с одной из следующих команд, чтобы указать деревья исходного кода и сборки и сгенерировать систему сборки:

cmake [<options>] <path-to-source>

Использует текущую рабочую директорию как дерево сборки и <path-to-source> как дерево исходного кода. Указанный путь может быть абсолютным или относительным к текущей рабочей директории. Дерево исходного кода должно содержать файл CMakeLists.txt и не должно содержать файл CMakeCache.txt, так как последний идентифицирует существующее дерево сборки. Например:

$ mkdir build ; cd build
$ cmake ../src
cmake [<options>] <path-to-existing-build>

Использует <path-to-existing-build> как дерево сборки и загружает путь к дереву исходного кода из файла CMakeCache.txt, который должен был быть сгенерирован предыдущим запуском CMake. Указанный путь может быть абсолютным или относительным к текущей рабочей директории. Например:

$ cd build
$ cmake .
cmake [<options>] -S <path-to-source> -B <path-to-build>

Использует <path-to-build> как дерево сборки и <path-to-source> как дерево исходного кода. Указанные пути могут быть абсолютными или относительными к текущей рабочей директории. Дерево исходного кода должно содержать файл CMakeLists.txt. Дерево сборки будет создано автоматически, если оно ещё не существует. Например:

$ cmake -S src -B build

Во всех случаях <options> может быть нулём или более из следующих опций ниже.

После генерации системы сборки можно использовать соответствующий родной инструмент сборки для сборки проекта. Например, после использования генератора Unix Makefiles можно запустить make напрямую:

$ make
$ make install

В качестве альтернативы, можно использовать cmake для сборки проекта, автоматически выбирая и вызывая соответствующий родной инструмент сборки.

Опции

-S <path-to-source>

Путь к корневой директории проекта CMake для сборки.

-B <path-to-build>

Путь к директории, которую CMake будет использовать в качестве корня директории сборки.

Если директория еще не существует, CMake создаст её.

-C <initial-cache>

Предварительная загрузка скрипта для заполнения кэша.

Когда CMake впервые выполняется в пустом дереве сборки, он создаёт файл CMakeCache.txt и заполняет его настраиваемыми настройками проекта. Этот параметр может быть использован для указания файла, из которого следует загрузить записи кэша перед первым проходом по файлам CMake проекта. Загруженные записи имеют приоритет над значениями по умолчанию проекта. Указанный файл должен быть скриптом CMake, содержащим команды set(), использующие параметр CACHE, а не файл формата кэша.

Ссылки на CMAKE_SOURCE_DIR и CMAKE_BINARY_DIR в скрипте приводят к верхнему уровню дерева исходного кода и дерева сборки.

-D <var>:<type>=<value>, -D <var>=<value>

Создание или обновление записи CMake CACHE.

Когда CMake впервые выполняется в пустом дереве сборки, он создаёт файл CMakeCache.txt и заполняет его настраиваемыми настройками проекта. Этот параметр может быть использован для указания настройки, которая имеет приоритет над значением по умолчанию проекта. Параметр может быть повторён для любого количества записей CACHE.

Если указана часть :<type>, то она должна быть одним из типов, указанных в документации команды set() для её подписи CACHE. Если часть :<type> опущена, запись будет создана без типа, если она не существует с уже существующим типом. Если команда в проекте устанавливает тип на PATH или FILEPATH, то <value> будет преобразована в абсолютный путь.

Этот параметр также может быть задан как один аргумент: -D<var>:<type>=<value> или -D<var>=<value>.

-U <globbing_expr>

Удаление совпадающих записей из кэша CMake CACHE.

Этот параметр может быть использован для удаления одной или нескольких переменных из файла CMakeCache.txt, поддерживаются выражения подстановки с * и ?. Параметр может быть повторён для любого количества записей CACHE.

Используйте с осторожностью, вы можете сделать свой CMakeCache.txt неработоспособным.

-G <generator-name>

Указание генератора системы сборки.

CMake может поддерживать несколько систем сборки на определённых платформах. Генератор отвечает за генерацию конкретной системы сборки. Возможные имена генераторов указаны в справочном руководстве cmake-generators(7).

Если не указано, CMake проверяет переменную окружения CMAKE_GENERATOR и в противном случае использует встроенный выбор по умолчанию.

-T <toolset-spec>

Указание набора инструментов для генератора, если он поддерживается.

Некоторые генераторы CMake поддерживают указание набора инструментов, чтобы сообщить родной системе сборки, как выбрать компилятор. Подробности см. в переменной CMAKE_GENERATOR_TOOLSET.

-A <platform-name>

Указание имени платформы, если оно поддерживается генератором.

Некоторые генераторы CMake поддерживают имя платформы, которое должно быть передано родной системе сборки для выбора компилятора или SDK. Подробности см. в переменной CMAKE_GENERATOR_PLATFORM.

-Wno-dev

Подавление предупреждений разработчика.

Подавление предупреждений, предназначенных для автора файлов CMakeLists.txt. По умолчанию это также отключит предупреждения о устаревших функциях.

-Wdev

Включение предупреждений разработчика.

Включение предупреждений, предназначенных для автора файлов CMakeLists.txt. По умолчанию это также включит предупреждения о устаревших функциях.

-Werror=dev

Преобразование предупреждений разработчика в ошибки.

Преобразование предупреждений, предназначенных для автора файлов CMakeLists.txt в ошибки. По умолчанию это также сделает предупреждения о устаревших функциях ошибками.

-Wno-error=dev

Преобразование предупреждений разработчика не в ошибки.

Преобразование предупреждений, предназначенных для автора файлов CMakeLists.txt не в ошибки. По умолчанию это также отключит предупреждения о устаревших функциях как ошибки.

-Wdeprecated

Включение предупреждений о устаревших функциях.

Включение предупреждений об использовании устаревших функций, предназначенных для автора файлов CMakeLists.txt.

-Wno-deprecated

Подавление предупреждений об устаревших функциях.

Подавление предупреждений об использовании устаревших функций, предназначенных для автора файлов CMakeLists.txt.

-Werror=deprecated

Преобразование предупреждений о устаревших макросах и функциях в ошибки.

Преобразование предупреждений об использовании устаревших макросов и функций, предназначенных для автора файлов CMakeLists.txt в ошибки.

-Wno-error=deprecated

Преобразование предупреждений о устаревших макросах и функциях не в ошибки.

Преобразование предупреждений об использовании устаревших макросов и функций, предназначенных для автора файлов CMakeLists.txt не в ошибки.

-L[A][H]

Вывод несложных переменных кэша.

Вывод переменных CACHE запустит CMake и выведет все переменные из кэша CMake CACHE, которые не помечены как INTERNAL или ADVANCED. Это эффективно отобразит текущие настройки CMake, которые можно изменить с помощью параметра -D. Изменение некоторых переменных может привести к созданию дополнительных переменных. Если указан A, то будут отображаться также расширенные переменные. Если указан H, то также будет отображаться помощь для каждой переменной.

-N

Только режим просмотра.

Только загрузка кэша. Не выполнение шагов настройки и генерации.

--graphviz=[file]

Генерация графа зависимостей graphviz, см. CMakeGraphVizOptions для более подробной информации.

Генерация файла graphviz, содержащего все зависимости библиотек и исполняемых файлов в проекте. См. документацию для CMakeGraphVizOptions для более подробной информации.

--system-information [file]

Вывод информации об этой системе.

Вывод широкого спектра информации о текущей системе. Если выполняется из начала бинарного дерева проекта CMake, он выведет дополнительную информацию, такую как кеш, файлы журнала и т.д.

--log-level=<ERROR|WARNING|NOTICE|STATUS|VERBOSE|DEBUG|TRACE>

Установка уровня ведения журнала.

Команда message() будет выводить сообщения только уровня заданного уровня или выше. По умолчанию уровень ведения журнала STATUS.

Для обратной совместимости также принимается --loglevel в качестве синонима этого параметра.

--debug-trycompile

Не удалять дерево сборки try_compile(). Полезно только для одного try_compile() за раз.

Не удалять файлы и каталоги, созданные для вызовов try_compile(). Это полезно при отладке неудачных try_compiles. Однако это может изменить результаты try-compiles, так как старый мусор от предыдущей try-compile может привести к тому, что другой тест будет либо проходить, либо проваливаться неправильно. Этот параметр лучше всего использовать для одного try-compile за раз и только при отладке.

--debug-output

Перевести cmake в отладочный режим.

Выводить дополнительную информацию во время выполнения cmake, такую как трассировки стека с вызовами message(SEND_ERROR).

--trace

Перевести cmake в режим трассировки.

Выводить трассировку всех вызовов и откуда.

--trace-expand

Перевести cmake в режим трассировки.

Как --trace, но с раскрытыми переменными.

--trace-source=<file>

Перевести cmake в режим трассировки, но выводить только строки указанного файла.

Разрешены несколько параметров.

--trace-redirect=<file>

Перевести cmake в режим трассировки и перенаправить вывод трассировки в файл вместо stderr.

--warn-uninitialized

Предупреждать об инициализированных значениях.

Выводить предупреждение, когда используется неинициализированная переменная.

--warn-unused-vars

Предупреждать об неиспользованных переменных.

Найти переменные, которые объявлены или установлены, но не используются.

--no-warn-unused-cli

Не предупреждать об опциях командной строки.

Не находить переменные, которые объявлены в командной строке, но не используются.

--check-system-vars

Найти проблемы с использованием переменных в системных файлах.

Обычно неиспользуемые и неинициализированные переменные ищутся только в CMAKE_SOURCE_DIR и CMAKE_BINARY_DIR. Этот флаг сообщает CMake о том, чтобы предупреждать также и об других файлах.

Сборка проекта

CMake предоставляет командную строку для сборки уже сгенерированного проекта бинарного дерева:

cmake --build <dir> [<options>] [-- <build-tool-options>]

Это абстрагирует интерфейс командной строки родного инструмента сборки с помощью следующих параметров:

--build <dir>

Директория двоичных файлов проекта, подлежащая построению. Это обязательный параметр и должен указываться первым.

--parallel [<jobs>], -j [<jobs>]

Максимальное количество одновременно используемых процессов при построении. Если <jobs> опущено, используется значение по умолчанию, заданное утилитой построения.

Переменная окружения CMAKE_BUILD_PARALLEL_LEVEL, если она установлена, задаёт значение уровня параллельности по умолчанию, когда этот параметр не указан.

Некоторые утилиты построения всегда работают параллельно. Использование значения <jobs> в качестве 1 позволяет ограничить количество задач одной.

--target <tgt>..., -t <tgt>...

Построить <tgt> вместо целевого объекта по умолчанию. Можно указать несколько целевых объектов, разделяя их пробелами.

--config <cfg>

Для инструментов с несколькими конфигурациями выберите конфигурацию <cfg>.

--clean-first

Сначала построить целевой объект clean, а затем выполнить построение. (Для очистки только используйте --target clean.)

--use-stderr

Игнорируется. Поведение по умолчанию в CMake >= 3.0.

--verbose, -v

Включить подробный вывод — если поддерживается — включая команды построения, которые будут выполнены.

Этот параметр можно опустить, если переменная окружения VERBOSE или кэшированная переменная CMAKE_VERBOSE_MAKEFILE установлена.

--

Передать оставшиеся параметры утилите.

Запустите cmake --build без параметров для получения краткой справки.

Установка проекта

CMake предоставляет командную строку для установки уже сгенерированной двоичной структуры проекта:

cmake --install <dir> [<options>]

Это может быть использовано после построения проекта для выполнения установки без использования сгенерированной системы сборки или утилиты построения. Параметры:

--install <dir>

Директория двоичных файлов проекта для установки. Это обязательный параметр и должен указываться первым.

--config <cfg>

Для многоконфигурационных генераторов выберите конфигурацию <cfg>.

--component <comp>

Установка на основе компонентов. Установить только компонент <comp>.

--prefix <prefix>

Переопределить префикс установки, CMAKE_INSTALL_PREFIX.

--strip

Сжать перед установкой.

-v, --verbose

Включить подробный вывод.

Этот параметр можно опустить, если установлена переменная окружения VERBOSE.

Запустите cmake --install без параметров для получения краткой справки.

Открытие проекта

cmake --open <dir>

Открыть сгенерированный проект в соответствующем приложении. Эта функция поддерживается только некоторыми генераторами.

Режим обработки скрипта

cmake [{-D <var>=<value>}...] -P <cmake-script-file>

Обработать данный файл cmake как скрипт, написанный на языке CMake. Шаги конфигурации и генерации не выполняются, кэш не изменяется. Если переменные определены с использованием -D, это должно быть сделано до аргумента -P.

Запуск командной утилиты

CMake предоставляет встроенные инструменты командной строки с помощью синтаксиса

cmake -E <command> [<options>]

Запустите cmake -E или cmake -E help для получения сводки команд. Доступные команды:

capabilities

Отчёт о возможностях cmake в формате JSON. Выходной результат — объект JSON со следующими ключами:

version

Объект JSON с информацией о версии. Ключи:

string

Полная строка версии, отображаемая cmake --version.

major

Основной номер версии в целочисленном формате.

minor

Дополнительный номер версии в целочисленном формате.

patch

Номер патча в целочисленном формате.

suffix

Строка суффикса версии cmake.

isDirty

Булево значение, установленное, если сборка cmake выполнена из модифицированного дерева.

generators

Список доступных генераторов. Каждый генератор — объект JSON со следующими ключами:

name

Строка с именем генератора.

toolsetSupport

true если генератор поддерживает наборы инструментов и false в противном случае.

platformSupport

true если генератор поддерживает платформы и false в противном случае.

extraGenerators

Список строк со всеми дополнительными генераторами, совместимыми с данным генератором.

fileApi

Необязательное поле, присутствующее при наличии cmake-file-api(7). Значение — объект JSON с одним элементом:

requests

Массив JSON, содержащий ноль или более поддерживаемых запросов file-api. Каждый запрос — объект JSON с элементами:

kind

Указывает один из поддерживаемых видов объектов.

version

Массив JSON, элементы которого представляют собой объекты JSON, каждый из которых содержит члены major и minor , определяющие целочисленные компоненты версии, не меньшие нуля.

serverMode

true если cmake поддерживает режим сервера и false в противном случае.

chdir <dir> <cmd> [<arg>...]

Изменение текущей рабочей директории и выполнение команды.

compare_files [--ignore-eol] <file1> <file2>

Проверка, совпадают ли <file1> и <file2>. Если файлы совпадают, возвращается 0, в противном случае — 1. Опция --ignore-eol подразумевает сравнение по строкам и игнорирует различия между LF и CRLF.

copy <file>... <destination>

Копирование файлов в <destination> (файл или директория). Если указано несколько файлов, <destination> должно быть директорией и существовать. Поддержка шаблонов не реализована. copy следует ссылкам.

copy_directory <dir>... <destination>

Копирование содержимого директорий <dir>... в директорию <destination>. Если директория <destination> не существует, она будет создана. copy_directory следует ссылкам.

copy_if_different <file>... <destination>

Копирование файлов в <destination> (файл или директория), если они изменены. Если указано несколько файлов, <destination> должно быть директорией и существовать. copy_if_different следует ссылкам.

create_symlink <old> <new>

Создание символической ссылки <new>, называя <old>.

Примечание

Путь, где будет создана символическая ссылка <new>, должен существовать предварительно.

echo [<string>...]

Отображение аргументов как текста.

echo_append [<string>...]

Отображение аргументов как текста без новой строки.

env [--unset=NAME]... [NAME=VALUE]... COMMAND [ARG]...

Выполнение команды в изменённой среде.

environment

Отображение текущих переменных среды.

false

Ничего не делает, с кодом выхода 1.

make_directory <dir>...

Создание директорий <dir>. При необходимости создаются также родительские директории. Если директория уже существует, она будет проигнорирована.

md5sum <file>...

Создание контрольной суммы MD5 файлов в формате, совместимом с md5sum:

351abe79cd3800b38cdfb25d45015a15  file1.txt
052f86c15bbde68af55c7f7b340ab639  file2.txt
sha1sum <file>...

Создание контрольной суммы SHA1 файлов в формате, совместимом с sha1sum:

4bb7932a29e6f73c97bb9272f2bdc393122f86e0  file1.txt
1df4c8f318665f9a5f2ed38f55adadb7ef9f559c  file2.txt
sha224sum <file>...

Создание контрольной суммы SHA224 файлов в формате, совместимом с sha224sum:

b9b9346bc8437bbda630b0b7ddfc5ea9ca157546dbbf4c613192f930  file1.txt
6dfbe55f4d2edc5fe5c9197bca51ceaaf824e48eba0cc453088aee24  file2.txt
sha256sum <file>...

Создание контрольной суммы SHA256 файлов в формате, совместимом с sha256sum:

76713b23615d31680afeb0e9efe94d47d3d4229191198bb46d7485f9cb191acc  file1.txt
15b682ead6c12dedb1baf91231e1e89cfc7974b3787c1e2e01b986bffadae0ea  file2.txt
sha384sum <file>...

Создание контрольной суммы SHA384 файлов в формате, совместимом с sha384sum:

acc049fedc091a22f5f2ce39a43b9057fd93c910e9afd76a6411a28a8f2b8a12c73d7129e292f94fc0329c309df49434  file1.txt
668ddeb108710d271ee21c0f3acbd6a7517e2b78f9181c6a2ff3b8943af92b0195dcb7cce48aa3e17893173c0a39e23d  file2.txt
sha512sum <file>...

Создание контрольной суммы SHA512 файлов в формате, совместимом с sha512sum:

2a78d7a6c5328cfb1467c63beac8ff21794213901eaadafd48e7800289afbc08e5fb3e86aa31116c945ee3d7bf2a6194489ec6101051083d1108defc8e1dba89  file1.txt
7a0b54896fe5e70cca6dd643ad6f672614b189bf26f8153061c4d219474b05dad08c4e729af9f4b009f1a1a280cb625454bf587c690f4617c27e3aebdf3b7a2d  file2.txt
remove [-f] <file>...

Удаление файла(ов). Если любой из перечисленных файлов не существует, команда возвращает ненулевой код выхода, но сообщение не регистрируется. Опция -f изменяет поведение, возвращая нулевой код выхода (т.е. успех) в таких ситуациях вместо этого. remove не следует ссылкам.

remove_directory <dir>...

Удаление директорий <dir> и их содержимого. Если директория не существует, она будет проигнорирована. Если <dir> — символическая ссылка на директорию, будет удалена только ссылка.

rename <oldname> <newname>

Переименование файла или директории (в пределах одного тома). Если файл с именем <newname> уже существует, он будет тихо заменён.

server

Запуск режима cmake-server(7).

sleep <number>...

Ожидание заданного количества секунд.

tar [cxt][vf][zjJ] file.tar [<options>] [--] [<pathname>...]

Создание или извлечение архива tar или zip. Опции:

c

Создание нового архива, содержащего указанные файлы. Если используется, аргумент <pathname>... обязателен.

x

Извлечение из архива на диск. Аргумент <pathname>... может быть использован для извлечения только выбранных файлов или директорий. При извлечении выбранных файлов или директорий необходимо указать их точные имена, включая путь, как отображено в списке (-t).

t

Вывод содержимого архива. Аргумент <pathname>... может быть использован для вывода только выбранных файлов или директорий.

v

Вывод подробной информации.

z

Сжатие результирующего архива с помощью gzip.

j

Сжатие результирующего архива с помощью bzip2.

J

Сжатие результирующего архива с помощью XZ.

--zstd

Сжатие результирующего архива с помощью Zstandard.

--files-from=<file>

Чтение имён файлов из заданного файла, по одному на строку. Пустые строки игнорируются. Строки не могут начинаться с -, за исключением --add-file=<name>, чтобы добавить файлы, чьи имена начинаются с -.

--format=<format>

Указание формата создаваемого архива. Поддерживаемые форматы: 7zip, gnutar, pax, paxr (ограниченный pax, по умолчанию) и zip.

--mtime=<date>

Указание времени изменения, регистрируемого в записях tarball.

--

Прекращение интерпретации опций и обработка всех оставшихся аргументов как имён файлов, даже если они начинаются с -.

time <command> [<args>...]

Выполнение команды и отображение времени выполнения.

touch <file>...

Создаёт <file> если файл не существует. Если <file> существует, изменяет время доступа и изменения <file>.

touch_nocreate <file>...

Изменяет файл, если он существует, но не создаёт его. Если файл не существует, он будет проигнорирован.

true

Ничего не делает, с кодом выхода 0.

Инструменты командной строки, специфичные для Windows

Следующие cmake -E команды доступны только в Windows:

delete_regv <key>

Удаление значения в реестре Windows.

env_vs8_wince <sdkname>

Отображение пакетного файла, устанавливающего среду для предоставленной установленной в VS2005 Windows CE SDK.

env_vs9_wince <sdkname>

Отображение пакетного файла, устанавливающего среду для предоставленной установленной в VS2008 Windows CE SDK.

write_regv <key> <value>

Запись значения в реестр Windows.

Запуск инструмента поиска пакетов

CMake предоставляет вспомогательный инструмент для проектов на основе Makefile, аналогичный pkg-config:

cmake --find-package [<options>]

Он ищет пакет с использованием find_package() и выводит полученные флаги в стандартный вывод. Это можно использовать вместо pkg-config для поиска установленных библиотек в проектах на основе Makefile или в проектах на основе autoconf (через share/aclocal/cmake.m4).

Примечание

Этот режим не имеет хорошей поддержки из-за некоторых технических ограничений. Он сохраняется для совместимости, но не должен использоваться в новых проектах.

Просмотр справки

Для вывода выбранных страниц из документации CMake используйте

cmake --help[-<topic>]

с одной из следующих опций:

--help,-help,-usage,-h,-H,/?

Вывести информацию об использовании и выйти.

Информация об использовании описывает базовый интерфейс командной строки и его параметры.

--version,-version,/V [<f>]

Показать баннер с именем/версией программы и выйти.

Если указан файл, версия запишется в него. Справка выводится в указанный файл <f>айл, если он задан.

--help-full [<f>]

Вывести все руководства справки и выйти.

Все руководства выводятся в удобочитаемом текстовом формате. Справка выводится в указанный файл <f>айл, если он задан.

--help-manual <man> [<f>]

Вывести одно руководство справки и выйти.

Указанное руководство выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f>айл, если он задан.

--help-manual-list [<f>]

Вывести список доступных руководств справки и выйти.

Список содержит все руководства, по которым можно получить справку, используя параметр --help-manual с последующим именем руководства. Справка выводится в указанный файл <f>айл, если он задан.

--help-command <cmd> [<f>]

Вывести справку по одной команде и выйти.

Запись справки по руководству cmake-commands(7) для <cmd> выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f>айл, если он задан.

--help-command-list [<f>]

Вывести список команд со справкой и выйти.

Список содержит все команды, по которым можно получить справку, используя параметр --help-command с последующим именем команды. Справка выводится в указанный файл <f>айл, если он задан.

--help-commands [<f>]

Вывести руководство справки cmake-commands и выйти.

Руководство справки cmake-commands(7) выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f>айл, если он задан.

--help-module <mod> [<f>]

Вывести справку по одному модулю и выйти.

Запись справки по руководству cmake-modules(7) для <mod> выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f>айл, если он задан.

--help-module-list [<f>]

Вывести список модулей со справкой и выйти.

Список содержит все модули, по которым можно получить справку, используя параметр --help-module с последующим именем модуля. Справка выводится в указанный файл <f>айл, если он задан.

--help-modules [<f>]

Вывести руководство справки cmake-modules и выйти.

Руководство справки cmake-modules(7) выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f>айл, если он задан.

--help-policy <cmp> [<f>]

Вывести справку по одному правилу и выйти.

Запись справки по руководству cmake-policies(7) для <cmp> выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f>айл, если он задан.

--help-policy-list [<f>]

Вывести список правил со справкой и выйти.

Список содержит все правила, по которым можно получить справку, используя параметр --help-policy с последующим именем правила. Справка выводится в указанный файл <f>айл, если он задан.

--help-policies [<f>]

Вывести руководство справки cmake-policies и выйти.

Руководство справки cmake-policies(7) выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f>айл, если он задан.

--help-property <prop> [<f>]

Вывести справку по одному свойству и выйти.

Записи справки по руководству cmake-properties(7) для <prop> выводятся в удобочитаемом текстовом формате. Справка выводится в указанный файл <f>айл, если он задан.

--help-property-list [<f>]

Вывести список свойств со справкой и выйти.

Список содержит все свойства, по которым можно получить справку, используя параметр --help-property с последующим именем свойства. Справка выводится в указанный файл <f>айл, если он задан.

--help-properties [<f>]

Вывести руководство справки cmake-properties и выйти.

Руководство справки cmake-properties(7) выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f>айл, если он задан.

--help-variable <var> [<f>]

Вывести справку по одной переменной и выйти.

Запись справки по руководству cmake-variables(7) для <var> выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f>айл, если он задан.

--help-variable-list [<f>]

Вывести список переменных со справкой и выйти.

Список содержит все переменные, по которым можно получить справку, используя параметр --help-variable с последующим именем переменной. Справка выводится в указанный файл <f>айл, если он задан.

--help-variables [<f>]

Вывести руководство справки cmake-variables и выйти.

Руководство справки cmake-variables(7) выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f>айл, если он задан.

См. также

Следующие ресурсы доступны для получения справки по использованию CMake:

Главная страница

https://cmake.org

Основная стартовая точка для изучения CMake.

Онлайн-документация и ресурсы сообщества

https://cmake.org/documentation

Ссылки на доступную документацию и ресурсы сообщества можно найти на этой веб-странице.

Форум Discourse

https://discourse.cmake.org

Форум Discourse предоставляет площадку для обсуждения и вопросов по CMake.

© 2000–2020 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.16/manual/cmake.1.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API