Compatibilidad con Clang/LLVM en proyectos CMake de Visual Studio

Puede utilizar Visual Studio con Clang para editar y depurar proyectos CMake de C++ dirigidos a Windows o Linux.

Windows: Visual Studio 2019 versión 16.1 incluye soporte para editar, compilar y depurar con Clang/LLVM en proyectos CMake dirigidos a Windows.

Linux: Para proyectos CMake de Linux, no se requiere soporte especial de Visual Studio. Puede instalar Clang usando el administrador de paquetes de su distribución y agregar los comandos apropiados en las listas de CMakeLists.archivo txt.

Instalar

Para obtener la mejor compatibilidad con IDE en Visual Studio, recomendamos usar las últimas herramientas de compilador de Clang para Windows. Si aún no los tiene, puede instalarlos abriendo el instalador de Visual Studio y eligiendo C++ Clang compiler para Windows en Desarrollo de escritorio con componentes opcionales de C++. Cuando utilice una instalación de Clang personalizada, compruebe el componente C++ Clang-cl para herramientas de compilación v142.

 Instalación de componentes de Clang

Crear una nueva configuración

Para agregar una nueva configuración de Clang a un proyecto CMake:

  1. Haga clic con el botón derecho en Listas de CMakeLists.txt en el Explorador de soluciones y elija configuración de CMake para el proyecto.

  2. En Configuraciones, presione el botón Agregar configuración:

    Añadir configuración

  3. Elija la configuración de sonido deseada (tenga en cuenta que se proporcionan configuraciones de sonido separadas para Windows y Linux) y, a continuación, presione Seleccionar:

    Configuración de Clang de CMake

  4. Para realizar modificaciones a esta configuración, utilice el Editor de configuración de CMake. Para obtener más información, consulte Personalizar la configuración de compilación de CMake en Visual Studio.

Modificar una configuración existente para usar Clang

Para modificar una configuración existente para usar Clang, siga estos pasos:

  1. Haga clic con el botón derecho en Listas de CMakeLists.txt en el Explorador de soluciones y elija configuración de CMake para el proyecto.

  2. En General, seleccione el menú desplegable Conjunto de herramientas y elija el conjunto de herramientas de sonido deseado:

    Captura de pantalla del cuadro de diálogo General que muestra que el conjunto de herramientas está seleccionado y que clang cl x 86 está resaltado.

Ubicaciones de Clang personalizadas

De forma predeterminada, Visual Studio busca Clang en dos lugares:

  • (Windows) La copia de Clang/LLVM instalada internamente que viene con el instalador de Visual Studio.
  • (Windows y Linux) La variable de entorno PATH.

Puede especificar otra ubicación configurando las variables CMake CMAKE_C_COMPILER y CMAKE_CXX_COMPILER en la configuración de CMake:

Captura de pantalla del cuadro de diálogo Configuración de C Make con el compilador de C Make C X X resaltado.

Modos de compatibilidad de Clang

Para configuraciones de Windows, CMake invoca de forma predeterminada Clang en modo clang-cl y enlaza con la implementación de Microsoft de la Biblioteca Estándar. De forma predeterminada, clang-cl.exe se encuentra en C:\Program Files (x86)\Microsoft Visual Studio19\Common7\IDE\CommonExtensions\Microsoft\Llvm\bin.

Puede modificar estos valores en la configuración de CMake en variables de CMake y caché. Haga clic en Mostrar variables avanzadas. Desplácese hacia abajo para encontrar CMAKE_CXX_COMPILER y, a continuación, haga clic en el botón Examinar para especificar una ruta de compilador diferente.

Editar, compilar y depurar

Después de configurar una configuración de Clang, puede compilar y depurar el proyecto. Visual Studio detecta que está utilizando el compilador Clang y proporciona IntelliSense, resaltado, navegación y otras funciones de edición. Los errores y advertencias se muestran en la ventana de salida.

Al depurar, puede usar puntos de interrupción, visualización de memoria y datos y la mayoría de las demás funciones de depuración. Algunas características dependientes del compilador, como Editar y Continuar, no están disponibles para las configuraciones de Clang.

 Depuración de Clang de CMake

Deja una respuesta

Tu dirección de correo electrónico no será publicada.