Поделиться через


Поддержка Clang/LLVM в проектах Visual Studio CMake

Поддержка Clang доступна, начиная с Visual Studio версии 2019.

Visual Studio с Clang можно использовать для изменения и отладки проектов C++ CMake, предназначенных для Windows или Linux.

Windows: начиная с Visual Studio 2019 версии 16.1, Visual Studio включает поддержку редактирования, сборки и отладки с помощью Clang/LLVM в проектах CMake, предназначенных для Windows.

Linux: для проектов CMake linux не требуется специальная поддержка Visual Studio. Вы можете установить Clang с помощью диспетчера пакетов вашего дистрибутива и добавить соответствующие команды в файл CMakeLists.txt.

Установка

Для лучшей поддержки интегрированной среды разработки в Visual Studio рекомендуется использовать новейшие средства компилятора Clang для Windows. Если они еще не установлены, их можно установить, открыв Visual Studio Installer и выбрав Компилятор C++ Clang для Windows в разделе дополнительных компонентов Разработка классических приложений на C++. Вы можете использовать существующую установку Clang на компьютере; Если это так, выберите C++ Clang-cl для средств сборки версии 142 или C++ Clang-cl для компонента средств сборки версии 143.

Снимок экрана: страница

Для лучшей поддержки интегрированной среды разработки в Visual Studio рекомендуется использовать новейшие средства компилятора Clang для Windows. Если они еще не установлены, их можно установить, открыв Visual Studio Installer и выбрав Компилятор C++ Clang для Windows в разделе дополнительных компонентов Разработка классических приложений на C++. Вы можете использовать существующую установку Clang на компьютере; Если это так, выберите компонент набора инструментов LLVM (clang-cl).

Снимок экрана: страница

Создание новой конфигурации

Чтобы добавить новую конфигурацию Clang в проект CMake, выполните следующие действия:

  1. Щелкните правой кнопкой мыши файл CMakeLists.txt в обозревателе решений и выберите Параметры CMake для проекта.

  2. В разделе Конфигурации нажмите кнопку Добавить конфигурацию:

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

  3. Выберите нужную конфигурацию Clang (обратите внимание, что для Windows и Linux предоставляются разные конфигурации Clang), а затем нажмите Выбрать:

    Снимок экрана: диалоговое окно добавления конфигурации в параметрах CMake для конфигурации Clang.

  4. Чтобы внести изменения в эту конфигурацию, используйте редактор параметров CMake. Дополнительные сведения см. в статье Настройка параметров сборки CMake в Visual Studio.

Изменение существующей конфигурации для использования Clang

Чтобы изменить существующую конфигурацию для использования Clang, выполните следующие действия:

  1. Щелкните правой кнопкой мыши файл CMakeLists.txt в обозревателе решений и выберите Параметры CMake для проекта.

  2. В разделе Общие откройте раскрывающийся список Набор инструментов и выберите нужный набор инструментов Clang:

    Снимок экрана: диалоговое окно

Настраиваемые расположения Clang

По умолчанию Visual Studio ищет Clang в двух местах:

  • (Windows) Внутренняя установленная копия Clang/LLVM, поставляемая с Visual Studio Installer.
  • (Windows и Linux) Переменная среды PATH.

Можно указать другое расположение, задав переменные CMake CMAKE_C_COMPILER и CMAKE_CXX_COMPILER в параметрах CMake.

Снимок экрана: диалоговое окно

Режимы совместимости Clang

Для конфигураций Windows CMake по умолчанию вызывает Clang в режиме clang-cl и связывается с реализацией стандартной библиотеки Майкрософт. По умолчанию clang-cl.exe находится в C:\Program Files (x86)\Microsoft Visual Studio\2019\Common7\IDE\CommonExtensions\Microsoft\Llvm\bin.

Эти значения можно изменить в параметрах CMake в разделе Кэш и переменные CMake. Щелкните Показать дополнительные переменные. Прокрутите вниз, чтобы найти CMAKE_CXX_COMPILER, а затем нажмите кнопку Обзор, чтобы указать другой путь компилятора.

Правка, сборка и отладка

После настройки конфигурации Clang можно выполнить сборку и отладку проекта. Visual Studio обнаруживает, что используется компилятор Clang, и предоставляет IntelliSense, выделение, навигацию и другие функции редактирования. Ошибки и предупреждения отображаются в окне вывода.

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

Снимок экрана: отладчик Visual Studio, который выполняет отладку проекта CMake Clang.