Spec-Zone.ru › CMake

CMAKE_GENERATOR_INSTANCE

Добавлено в версии 3.11.

Указанная пользователем спецификация экземпляра, зависящая от генератора.

Некоторые генераторы CMake поддерживают выбор экземпляра собственной системы сборки, если доступно несколько экземпляров. Если пользователь указывает экземпляр (например, задавая эту запись кэша или переменную среды CMAKE_GENERATOR_INSTANCE) или если экземпляр по умолчанию выбран при первой настройке дерева сборки, его значение будет доступно в этой переменной.

Код проекта никогда не должен изменять значение этой переменной. Файл набора инструментов, указанный переменной CMAKE_TOOLCHAIN_FILE, может инициализировать CMAKE_GENERATOR_INSTANCE как запись кэша. После инициализации дерева сборки с определённым значением этой переменной изменение значения приводит к неопределённому поведению.

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

Выбор экземпляра Visual Studio

Генераторы Visual Studio поддерживают указание экземпляра для Visual Studio 2017 и более поздних версий. Переменную CMAKE_GENERATOR_INSTANCE можно задать как запись кэша, выбрав экземпляр Visual Studio одним из следующих способов:

  • location
  • location[,key=value]*
  • key=value[,key=value]*

location задаёт абсолютный путь к каталогу верхнего уровня установки VS.

Пары key=value образуют разделённый запятыми список параметров для указания сведений о выборе экземпляра. Поддерживаются следующие пары:

version=<major>.<minor>.<date>.<build>

Добавлено в версии 3.23.

Указывает версию сборки VS из 4 компонентов, также называемую номером сборки.

Компоненты:

<major>.<minor>

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

<date>

Дата сборки в формате MMMDD, где MMM — это индекс месяца с момента эпохи, используемой Microsoft, а DD — день этого месяца.

<build>

Индекс сборки за день, указанный в <date>.

Номер сборки сообщает vswhere в виде installationVersion. Например, номер сборки VS 16.11.10 — 16.11.32126.315.

Добавлено в версии 3.23: Переносимый экземпляр VS, неизвестный установщику Visual Studio, можно указать, задав оба параметра: location и version=.

Если значение CMAKE_GENERATOR_INSTANCE явно не указано пользователем или файлом набора инструментов, CMake запрашивает установщик Visual Studio, чтобы найти экземпляры VS, выбирает один из них и задаёт переменную как запись кэша для сохранения значения. Если задана переменная среды вида VS##0COMNTOOLS, где ## — номер основной версии Visual Studio, и она указывает на каталог Common7/Tools одного из экземпляров VS, будет использоваться этот экземпляр. В противном случае, если установлено несколько экземпляров VS, не определяется, какой из них будет выбран по умолчанию.

Номер сборки версии VS выбранного экземпляра VS доступен в переменной CMAKE_VS_VERSION_BUILD_NUMBER.

© 2000–2026 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/variable/CMAKE_GENERATOR_INSTANCE.html

Spec-Zone.ru

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