MSVC_RUNTIME_LIBRARY
Выберите библиотеку времени выполнения MSVC для использования компиляторами, ориентированными на ABI MSVC.
Допустимые значения:
-
MultiThreaded -
Компилировать с
-MTили эквивалентным флагом(ами) для использования многопотоковой статически связанной библиотеки времени выполнения. -
MultiThreadedDLL -
Компилировать с
-MDили эквивалентным флагом(ами) для использования многопотоковой динамически связанной библиотеки времени выполнения. -
MultiThreadedDebug -
Компилировать с
-MTdили эквивалентным флагом(ами) для использования многопотоковой статически связанной библиотеки времени выполнения. -
MultiThreadedDebugDLL -
Компилировать с
-MDdили эквивалентным флагом(ами) для использования многопотоковой динамически связанной библиотеки времени выполнения.
Значение игнорируется в не-MSVC компиляторах, но недопустимое значение будет отклонено как ошибка при использовании компилятора, ориентированного на ABI MSVC.
Значение также может быть пустой строкой (""), в этом случае CMake не будет добавлять явно флаг выбора библиотеки времени выполнения. Обратите внимание, что с Генераторами Visual Studio собственная система построения может выбрать добавление собственного значения по умолчанию для выбора библиотеки времени выполнения.
Используйте generator expressions, чтобы поддерживать указание на конфигурацию. Например, код:
add_executable(foo foo.c) set_property(TARGET foo PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
выбирает для целевого foo многопоточную статически связанную библиотеку времени выполнения с или без отладочной информации в зависимости от конфигурации.
Если этот параметр не задан, CMake использует значение по умолчанию MultiThreaded$<$<CONFIG:Debug>:Debug>DLL для выбора библиотеки времени выполнения MSVC.
Примечание
Этот параметр имеет эффект только при условии, что политика CMP0091 установлена в значение NEW до первого project() или enable_language() команды, включающей язык с помощью компилятора, ориентированного на ABI MSVC.
© 2000–2020 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.15/prop_tgt/MSVC_RUNTIME_LIBRARY.html