Перейти к содержимому

Как поменять компилятор в visual studio

  • автор:

Компиляция проекта C/C++

Параметры компилятора C и C++ можно задать в интегрированной среде разработки Visual Studio или в командной строке.

В Visual Studio

Параметры компилятора для каждого проекта можно задать в диалоговом окне «Страницы свойств Visual Studio«. В левой области выберите «Свойства конфигурации», C/C++ и выберите категорию параметра компилятора. В разделе для каждого параметра компилятора приводится описание способа задания и расположение параметра в среде разработки. Дополнительные сведения и полный список параметров см. в разделе параметров компилятора MSVC.

В командной строке

Способы настройки параметров компилятора (CL.exe):

  • В командной строке
  • В файлах команд
  • В переменной среды CL

Параметры, заданные в переменной среды компилятора CL, используются при каждом вызове компилятора CL. Если командный файл указан в переменной среды компилятора CL или в командной строке, используются параметры, заданные в командном файле. В отличие от командной строки или переменной среды компилятора CL, командный файл позволяет использовать несколько строк для параметров и имен файлов.

Параметры компилятора обрабатываются «слева направо», и при обнаружении конфликта приоритет имеет последний (крайний справа) параметр. Переменная среды компилятора CL обрабатывается до обработки командной строки, поэтому в случае возникновения конфликтов между компилятором CL и командной строкой приоритет имеет командная строка.

Дополнительные разделы, содержащие сведения о компиляторах

  • Параметры компилятора MSVC
  • Файлы предварительно скомпилированных заголовков
  • Вызов компоновщика компилятором CL

Сведения о выборе узла компилятора и целевой архитектуры см. в разделе «Настройка проектов C++ для 64-разрядных целевых объектов x64».

Компиляция и сборка в Visual Studio

Область применения:yesVisual Studio Visual Studio для Mac noVisual Studio Code no

Начальные сведения о сборке в IDE см. в разделе Пошаговое руководство. Построение приложения.

Сборку приложения можно выполнять с помощью интегрированной среды разработки Visual Studio, программ командной строки MSBuild и Azure Pipelines:

Метод построения Льготы
IDE — Немедленное создание сборок и тестирование их в отладчике.
— Запуск многопроцессорных сборок для проектов C++ и C#.
— Настройка различных аспектов системы сборки.
CMake. — Создание проектов C++ с помощью средства CMake
– Использование одной и той же системы сборки на платформах Linux и Windows.
Командная строка MSBuild — Сборка проектов без установки Visual Studio.
— Запуск многопроцессорных сборок для всех типов проектов.
— Настройка большинства аспектов системы сборки.
Azure Pipelines — Автоматизация процесса сборки в рамках конвейера непрерывной интеграции или поставки.
— Применение автоматических тестов для каждой сборки.
— Использование практически неограниченных облачных ресурсов для процессов сборки.
— Возможность изменения рабочего процесса сборки и создания процедур сборки с подробно настраиваемыми задачами.

В этом разделе подробно рассматривается сборка на основе IDE. Дополнительные сведения о других методах см. в разделах CMakeMSBuild и Azure Pipelines соответственно.

Этот раздел относится к Visual Studio в Windows. Информацию о Visual Studio для Mac см. в статье Компиляция и сборка в Visual Studio для Mac.

Создание в интегрированной среде разработки

При создании проекта среда Visual Studio создает для него конфигурации сборки по умолчанию, а также содержащее проект решение. Эти конфигурации определяют, как выполняется сборка и развертывание решений и проектов. В частности, используются уникальные конфигурации проектов для разных целевых платформ (например, Windows или Linux) и типов сборки (например, отладка или выпуск). Вы можете как угодно изменять эти конфигурации и при необходимости создавать свои собственные.

Начальные сведения о сборке в IDE см. в разделе Пошаговое руководство. Построение приложения.

После этого вы можете познакомиться с другими задачами:

  • Общие сведения о конфигурациях сборок
  • Настройка проектов для целевых платформ
  • Управление свойствами проектов и решений
  • Назначение событий построения в C# и Visual Basic
  • Задание параметров сборок
  • Параллельная сборка нескольких проектов

Связанный контент

  • Сборка (компиляция) проектов веб-узлов
  • Компиляция и сборка (Visual Studio для Mac)
  • Проекты CMake в Visual Studio

Изменение компилятора С++ VS Code

скриншот

Раньше я использовал Visual Studio для своих проектов на C++. Но я решил перейти на VS Code и установить GCC компилятор. Я скачал MinGw, установил, добавл в путь. С помощью расширения C++ через UI настроил MinGw. Но каждый раз при перезапуске компьютера у меня компилятор автоматически меняется на тот, что в Visual Studio.

[11.03.2021, 00:25:25] Для исходных файлов C++ cppStandard был изменен с «gnu++20» на «c++20» на основе аргументов компилятора и compilerPath запроса: «C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.28.29333/bin/Hostx64/x64/cl.exe»

Как можно исправить эту проблему и что посоветуете?
Отслеживать
123k 24 24 золотых знака 126 126 серебряных знаков 303 303 бронзовых знака
задан 10 мар 2021 в 21:37
maksim-mshp maksim-mshp
114 2 2 серебряных знака 12 12 бронзовых знаков

При перезагрузке компа или при перезапуске VS Code? Что если закрыть его до перезагрузки компа? И зачем вообще в этой схеме расширение?

10 мар 2021 в 22:02
@qwertiy при перезагрузке компа, vs code закрываю. Расширение для IntelliSense
10 мар 2021 в 22:27
Но ты же про настройку компилятора говоришь. Что всё-таки не работает — компиляция или подсветка?
11 мар 2021 в 0:51

@qwertiy проблема в том, что при перезагрузке компа автоматически менятся компилятор и мне приходится каждый раз менять его на MinGw

11 мар 2021 в 8:00

0

Сортировка: Сброс на вариант по умолчанию

Знаете кого-то, кто может ответить? Поделитесь ссылкой на этот вопрос по почте, через Твиттер или Facebook.

  • c++
  • visual-studio-code
  • gcc

Практическое руководство. Настройка проектов Visual Studio C++ для 64-разрядных платформ x64

С помощью конфигураций проектов в Visual Studio IDE можно настраивать приложения C++ как предназначенные для 64-разрядных платформ с архитектурой x64. Также можно перенести параметры проекта Win32 в конфигурацию 64-разрядного проекта.

Настройка приложений C++ как предназначенных для 64-разрядных платформ

  1. Откройте проект C++, который нужно настроить.
  2. Откройте страницы свойств для этого проекта. Подробнее см. в статье Настройка компилятора C++ и свойств сборки в Visual Studio.

Примечание. Для проектов .NET убедитесь, что узел «Свойства конфигурации» или один из дочерних узлов выбран в свойств проекта»>; в противном случае кнопка Configuration Manager остается недоступной.

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

Копирование параметров проекта Win32 в конфигурацию 64-разрядного проекта

  • В диалоговом окне Создание платформы решения , открытом в процессе настройки проекта как предназначенного для 64-разрядной платформы, в раскрывающемся списке Копировать параметры из выберите пункт Win32. Указанные ниже параметры проекта обновляются автоматически на уровне проекта.
    • Параметру компилятора /MACHINE присваивается значение /MACHINE:X64.
    • ПараметрЗарегистрировать вывод выключается. Дополнительные сведения см. в разделе Linker Property Pages.
    • ПараметруКонечная среда присваивается значение /env x64. Для получения дополнительной информации см. Страницы свойство MIDL.
    • Значение параметраПроверка параметров сбрасывается и меняется на значение по умолчанию. Для получения дополнительной информации см. Страницы свойство MIDL.
    • Если для параметра Формат отладочной информации в конфигурации проекта Win32 было задано значение /ZI , то в конфигурации 64-разрядного проекта ему присваивается значение /Zi . Дополнительные сведения см. в разделе /Z7, /Zi, /ZI (формат отладочной информации).

    Ни одно из этих свойств проекта не меняется, если оно переопределено на уровне файла.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *