Задача ClangCompile
Примечание.
Эта задача доступна только при использовании системы сборки C++.
Создает программу-оболочку для компилятора Microsoft C++ (clang.exe).
Параметры
В следующей таблице приводятся параметры задачи ClangCompile.
Параметр | Описание |
---|---|
AdditionalIncludeDirectories | Необязательный параметр типа string[]. Задает один или несколько каталогов для добавления в качестве пути включения; несколько значений разделяются точками с запятой. Используйте -I[path] . |
AdditionalOptions | Необязательный параметр типа string. |
BufferSecurityCheck | Необязательный параметр типа string. Проверка безопасности помогает обнаруживать переполнения буфера стека, что является обычной попыткой обхода защиты программы. Используйте fstack-protector . |
BuildingInIde | Необязательный параметр типа bool. |
CLanguageStandard | Необязательный параметр типа string. Определяет стандарт языка C. Используйте std=[value] со значением c89, c99, c11, gnu99 или gnu11. |
ClangVersion | Необязательный параметр типа string. |
CompileAs | Необязательный параметр типа string. Выбор языка компиляции C-файлов и CPP-файлов. Значение по умолчанию определяется на основе расширения C или .cpp. Используйте -x c , -x c++ . |
CppLanguageStandard | Необязательный параметр типа string. Определяет стандарт языка C++. Используйте std=[value] со значением c++98, c++11, c++1y, gnu++98, gnu++11 или gnu++1y. |
DataLevelLinking | Необязательный параметр типа bool. Разрешает операциям оптимизации компоновщика удалять неиспользуемые данные, порождая каждый элемент данных в отдельном разделе. |
DebugInformationFormat | Необязательный параметр типа string. Определяет тип отладочной информации, создаваемой компилятором. None — отладочная информация не создается для ускорения компиляции (используйте g0 ).FullDebug — создается отладочная информация DWARF2 (используйте g2 -gdwarf-2 ).LineNumber — создается только информация о номерах строк (используйте gline-tables-only ). |
EnableNeonCodegen | Необязательный параметр типа bool. Включает создание кода для оборудования NEON с плавающей запятой. Применимо только к архитектуре ARM. |
ExceptionHandling | Необязательный параметр типа string. Задает модель обработки исключений, используемую компилятором. Disabled — отключение обработки исключений (используйте fno-exceptions ).Enabled — включение обработки исключений (используйте fexceptions ).UnwindTables — создает нужные статические данные, не затрагивая создаваемый код (используйте funwind-tables ). |
FloatABI | Необязательный параметр типа string. Параметр для выбора ABI с плавающей запятой. soft — выходные данные компилятора содержат вызовы библиотек для операций с плавающей запятой (используйте mfloat-abi=soft ).softfp — код создается с помощью аппаратных инструкций с плавающей запятой, но с соблюдением соглашений о вызове программных операций с плавающей запятой (используйте mfloat-abi=softfp ).hard — позволяет создавать инструкции с плавающей запятой и использовать соглашения о вызовах для конкретных FPU (используйте mfloat-abi=hard ). |
ForcedIncludeFiles | Необязательный параметр типа string[]. Один или несколько принудительно включаемых файлов. Используйте -include [name] . |
FunctionLevelLinking | Необязательный параметр типа bool. Компилятор может упаковывать отдельные функции в форме упакованных функций (COMDAT). Требуется для изменения и продолжения работы. Используйте ffunction-sections . |
GccToolChain | Необязательный параметр типа string. Путь к папке с цепочкой инструментов Gcc. |
GNUMode | Необязательный параметр типа bool. |
MSCompatibility | Необязательный параметр типа bool. Включение полной совместимости с Microsoft C++. |
MSCompatibilityVersion | Необязательный параметр типа string. Значение с разделителями-точками, представляющее номер версии компилятора Майкрософт, который указывается в _MSC_VER (по умолчанию 0 — не задавать значение). |
MSExtensions | Необязательный параметр типа bool. Прием некоторых нестандартных конструкций, поддерживаемых компилятором корпорации Майкрософт. |
MSCompilerVersion | Необязательный параметр типа string. Номер версии компилятора Майкрософт, который указывается в _MSC_VER (по умолчанию 0 — не задавать значение). |
MSVCErrorReport | Необязательный параметр типа bool. Отчеты об ошибках, которые Visual Studio может проанализировать для получения данных о файле и строке. |
ObjectFileName | Необязательный параметр типа string. Задает имя, переопределяющее имя объектного файла по умолчанию; может быть именем файла или каталога. Используйте /Fo[name] . |
OmitFramePointers | Необязательный параметр типа bool. Отменяет создание указателей на фреймы в стеке вызовов. |
Оптимизация | Необязательный параметр типа string. Указывает уровень оптимизации для приложения. Custom — настраиваемая оптимизация. Disabled — отключить оптимизацию (используйте O0 ).MinSize — оптимизировать по размеру (используйте Os ).MaxSpeed — оптимизировать по скорости (используйте O2 ).Full — дорогостоящие оптимизации (используйте O3 ). |
PositionIndependentCode | Необязательный параметр типа bool. Создать позиционно-независимый код (PIC) для использования в общей библиотеке. |
PrecompiledHeader | Необязательный параметр типа string. Разрешает создание или использование предварительно скомпилированного заголовка во время сборки. |
PrecompiledHeaderFile | Необязательный параметр типа string. Задает имя, используемое для файла предкомпилированных заголовков. Во время сборки этот файл будет также добавлен в принудительно включенные файлы. |
PrecompiledHeaderOutputFileDirectory | Необязательный параметр типа string. Указывает каталог для создаваемого предкомпилированного заголовка. Во время сборки этот каталог также добавляется в дополнительные каталоги включаемых файлов. |
PrecompiledHeaderCompileAs | Необязательный параметр типа string. Выбор языка компиляции для файла предкомпилированных заголовков. Используйте -x c-header , -x c++-header . |
PreprocessorDefinitions | Необязательный параметр типа string[]. Определяет символы предварительной обработки в исходном файле. Используйте -D . |
RuntimeLibrary | Необязательный параметр типа string. Определяет библиотеку среды выполнения для компоновки. Используйте параметры MSVC /MT , /MTd , /MD , /MDd .MultiThreaded — предписывает приложению использовать многопоточную, статичную версию библиотеки среды выполнения. MultiThreadedDebug — определяет параметры _DEBUG и _MT. Этот параметр также предписывает компилятору размещение имени библиотеки LIBCMTD.lib в .obj-файле, чтобы компоновщик использовал LIBCMTD.lib для разрешения внешних символов. MultiThreadedDLL — предписывает приложению использовать специальную многопоточную версию библиотеки среды выполнения для конкретной библиотеки DLL. Определяет параметры _MT и _DLL и предписывает компилятору размещать имя библиотеки MSVCRT.lib в OBJ-файле. MultiThreadedDebugDLL — определяет параметры _DEBUG, _MT и_DLL и предписывает приложению использовать специальную многопоточную версию библиотеки среды выполнения для конкретной библиотеки DLL. Также предписывает компилятору размещение имени библиотеки MSVCRTD.lib в .obj-файле. |
RuntimeTypeInfo | Необязательный параметр типа bool. Добавляет код для проверки типов объектов C++ во время выполнения (информация о типах времени выполнения). Используйте frtti , fno-rtti . |
ShowIncludes | Необязательный параметр типа bool. Создает список включаемых файлов с выводом компилятора. Используйте -H . |
Источники | Обязательный параметр ITaskItem[]. |
StrictAliasing | Необязательный параметр типа bool. Использовать самые строгие правила присвоения псевдонима. Объект одного типа никогда не будет считаться находящимся по тому же адресу, что и объект другого типа. |
Sysroot | Необязательный параметр типа string. Путь к корневому каталогу с заголовками и библиотеками. |
TargetArch | Необязательный параметр типа string. Целевая архитектура. |
ThumbMode | Необязательный параметр типа string. Создайте код, выполняемый для микроархитектуры Thumb. Применимо только к архитектуре ARM. Thumb — создание кода Thumb (используйте mthumb ).ARM — создание кода Arm (используйте marm ).Disabled — вариант недоступен для выбранной платформы. |
TrackerLogDirectory | Необязательный параметр типа string. Каталог журнала отслеживания. |
TreatWarningAsError | Необязательный параметр типа bool. Интерпретирует все предупреждения компилятора как ошибки. Для нового проекта мы рекомендуем использовать параметр /WX во всех компиляциях. Разрешение всех предупреждений снизит число трудновыявляемых дефектов кода. |
UndefinePreprocessorDefinitions | Необязательный параметр типа string[]. Задает одну или несколько отмен определений препроцессора. Используйте -U [macro] . |
UndefineAllPreprocessorDefinitions | Необязательный параметр типа bool. Отменить все объявленные ранее определения препроцессора. Используйте -undef . |
UseMultiToolTask | Необязательный параметр типа bool. Многопроцессорная компиляция. |
UseShortEnums | Необязательный параметр типа bool. Тип перечисления использует столько байт, сколько требует входной набор возможных значений. |
Подробный | Необязательный параметр типа bool. Отображение команд для выполнения и использования подробного вывода. |
WarningLevel | Необязательный параметр типа string. Выберите, как строго компилятор должен воспринимать ошибки в коде. Другие флаги следует добавлять непосредственно в раздел дополнительных параметров (используйте /w , /Weverything ).TurnOffAllWarnings — отключает все предупреждения компилятора (используйте w ).EnableAllWarnings — включает все предупреждения, в том числе отключенные по умолчанию (используйте Wall ). |