Trabajar con el sistema de compilación QBS en el editor de código de Visual Studio

Hola compañeros programadores y todos los que simpatizan con ellos. Me gustaría ofrecer una descripción general de las capacidades del editor de Visual Studio Cod e junto con el sistema de compilación QBS . Quien esté interesado en este tema, bienvenido a cat.



Nota: Permítanme recordarles que QBS fue desarrollado por Qt Company , que luego abandonó el desarrollo de este producto y se lo entregó a la comunidad. Por el momento, QBS se está desarrollando activamente y están saliendo nuevos lanzamientos. Este soy yo en caso de que no haya comentarios "estúpidos" sobre esta partitura. Por así decirlo, punteando la I.



Hasta hace poco, el sistema de compilación QBS solo era compatible con el IDE QtCreator .



Pero ahora existe la oportunidad de usar este maravilloso sistema de compilación (no describiré por qué es maravilloso aquí) con el editor de código abierto de Visual Studio Code .



Literalmente, hace poco más de un mes, los chicos de la comunidad QBS lanzaron una idea: "¿por qué no crear un complemento para Visual Studio Code ?" Mmmm, de hecho, Visual Studio Code está muy extendido entre cierta parte de la humanidad, y QBS tiene una API similar a JSON especialmente diseñada para simplificar la integración con cualquier IDE . Y ... el trabajo empezó a hervir.



Fruto de este trabajo nació la extensión QBS para Visual Studio Code , que ya cuenta con las siguientes características:



  • Abrir directorio con archivos de proyecto.
  • Seleccione el proyecto requerido para construir (si hay varios archivos en el directorio).
  • Seleccione un perfil para ensamblar (análogo a un kit con compiladores).
  • Seleccione la configuración de compilación ( depuración / liberación ).
  • Seleccione un producto específico para construir (o todos los productos).
  • Seleccione un producto específico para ejecutar en la terminal.
  • Seleccione un producto específico para depurar.
  • El resaltado automático "inteligente" de código C / C ++ funciona.
  • El resaltado básico para archivos * .qbs funciona .
  • Se está construyendo un árbol de proyecto con todos los artefactos.


Nota: Por el momento, esta extensión aún no se ha publicado en el mercado de Visual Studio Code . todavía se necesita algo de tiempo para la revisión.



Entonces, echemos un vistazo más de cerca a cómo usar esta extensión.



Instalación de dependencias



Describe el proceso de instalación básico para QBS y Visual Studio Code .



  • Primero debe descargar o instalar el propio QBS, versión 1.16 o superior. Para hacer esto, puede usar el repositorio oficial o instalarlo desde los repositorios.



    Nota: No describiré aquí el proceso de instalación de QBS .

  • A continuación, debe configurar los perfiles con los que QBS compilará los proyectos. Cómo hacer esto se describe en detalle en la documentación .



    Para una configuración rápida, puede pedirle a QBS que detecte automáticamente todos los compiladores instalados y cree perfiles:



    qbs setup-toolchains --detect


    UI config-ui, :



    qbs config --list profiles


    : , PATH.

  • , QBS .



    : *.vsix

  • , Visual Studio Code, QBS , ctrl+ shift + p «Extensions: Install from VSIX...» *.vsix .





Ahora necesita configurar la extensión instalada para que QBS funcione. Para hacer esto, debe abrir la configuración de esta extensión seleccionando "Archivo -> Preferencias -> Extensiones" . Luego seleccione "QBS" , haga clic en el botón "Administrar" y seleccione "Configuración de extensión" .



  • A continuación, debe especificar la ruta al archivo ejecutable QBS en el campo "Ruta QBS" , por ejemplo:







    Nota: Utilice la barra diagonal / como separadores de ruta .

  • El resto de los parámetros se pueden dejar "como están" por ahora.



Abrir un proyecto



Para abrir un proyecto, debe seleccionar el directorio donde se encuentra el archivo del proyecto * .qbs . Para hacer esto, seleccione "Archivo -> Abrir carpeta" y seleccione el directorio deseado.



Nota: Esta parece ser una característica de este editor.



Una vez seleccionado el directorio, la extensión QBS se activa automáticamente e inicia la sesión QBS . El estado de la sesión actual se mostrará en la parte inferior del botón "QBS: iniciado" en la barra de herramientas del editor:







A continuación, la extensión enumerará todos los archivos de proyecto disponibles * .qbsen este directorio y establecerá el primer proyecto que encuentre como el proyecto predeterminado. El nombre de archivo del proyecto actualmente activo se mostrará en la parte inferior del botón correspondiente en la barra de herramientas del editor:







Nota: El usuario puede hacer clic en este botón y seleccionar otro archivo de proyecto de este directorio en la lista desplegable.



Además, la extensión instalará de forma predeterminada el primer perfil disponible, establecerá la configuración de compilación para depurar e iniciará el escaneo automático del proyecto para generar el gráfico de compilación.



El progreso del escaneo (progreso en porcentaje) se mostrará en una notificación emergente en la parte inferior derecha de la pantalla:







Nota: Todo el progreso de las operaciones, como escaneo, construcción, limpieza se mostrará en estos mensajes emergentes.



Además, la extensión crea dos ventanas de "salida" para ver los mensajes actuales:



  • Salida de compilación de QBS : muestra mensajes de operaciones básicas de escaneo, compilación y limpieza:





  • Salida de mensaje QBS : muestra mensajes de "servicio" (por ejemplo, del código JS de los módulos QBS):







Una vez que el escaneo del proyecto se haya completado con éxito, puede cambiar al árbol del proyecto proporcionado por la extensión. Para hacer esto, haga clic en el botón "QBS" en el panel izquierdo del editor:







Nota: En este caso, el árbol del proyecto muestra todos los subproyectos, productos, grupos y artefactos proporcionados por QBS después de escanear el proyecto.



Nota: El editor también muestra el directorio completo del proyecto después de abrirlo, pero este no es el árbol proporcionado por esta extensión, esta es una función incorporada del propio editor.



Construye el proyecto



Para construir un proyecto, debe seleccionar el perfil, la configuración y el producto deseados para construir.



  • Seleccionar un perfil se reduce a hacer clic en el botón correspondiente en la parte inferior de la barra de herramientas del editor y seleccionar el elemento deseado de la lista de perfiles disponibles:







  • Seleccionar una configuración se reduce a hacer clic en el botón correspondiente en la parte inferior de la barra de herramientas del editor y seleccionar el elemento deseado de la lista de configuraciones disponibles:







  • Seleccionar un producto se reduce a hacer clic en el botón apropiado en la parte inferior de la barra de herramientas del editor y seleccionar el elemento deseado de la lista de productos disponibles:







    Nota: El usuario puede seleccionar [todos] para construir todos los productos del proyecto.





Para iniciar la construcción en sí, el usuario puede hacer clic en el botón "Construir" en la parte inferior de la barra de herramientas del editor:







Nota: El proceso de construcción se mostrará tanto en la notificación desplegable como en la ventana de mensaje de "salida".



Elegir un producto para ejecutar o depurar



Para ejecutar o depurar un producto, primero debe seleccionarlo. Para ello, haga clic en el botón correspondiente en la parte inferior de la barra de herramientas del editor y seleccione el producto deseado de la lista de disponibles:







En este caso, si el producto ya está compilado y su archivo ejecutable existe, los botones Ejecutar y Depurar serán de color verde:







Además, cuando Al pasar el cursor sobre el producto que se está lanzando, se mostrará una información sobre herramientas que contiene la ruta completa al archivo ejecutable del producto:







Lanzamiento del producto seleccionado



Para iniciar el producto, simplemente haga clic en el botón "Ejecutar" en la parte inferior de la barra de herramientas del editor:







El producto se lanzará en el terminal "QBS Ejecutar" , que mostrará todos los mensajes de depuración de la aplicación en ejecución:







Depurar el producto seleccionado



Antes de depurar el producto, debe crear una configuración de depurador, que debe almacenarse en el archivo launch.json .



Nota: Puede encontrar más información sobre el formato de este archivo en la documentación oficial del editor.



De forma predeterminada, la extensión QBS actual espera este archivo en el directorio .vscode / en la raíz del proyecto abierto. Pero el usuario puede cambiar esta ruta al archivo launch.json en la configuración del complemento.



Por ejemplo, cuando se utiliza el depurador de MSVC, este archivo puede contener el siguiente contenido:



{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "C++ Debugger (Windows)",
            "type": "cppvsdbg",
            "request": "launch",
            "externalConsole": false
        }
    ]
}


Nota: La propiedad externalConsole debe establecerse en false si queremos ver los mensajes de depuración de la aplicación en la ventana del depurador.



Nota: Este archivo puede tener varias configuraciones para el mismo depurador o para diferentes (como MSVC, GDB, LLDB).



Después de que se haya creado y copiado el archivo launch.json en la ubicación deseada, debe seleccionar el depurador deseado de la lista haciendo clic en el botón correspondiente en la parte inferior derecha de la barra de herramientas del editor:







Ahora puede establecer un punto de interrupción en el código fuente del producto seleccionado y hacer clic en el botón "Depurar" en la parte inferior de la barra de herramientas del editor:







después de eso, puede disfrutar de la depuración:







Conclusión



Por supuesto, esta revisión no cubre algunos otros aspectos del trabajo con el editor (por ejemplo, trabajar a través de comandos) y tampoco proporciona una explicación de las opciones de configuración de QBS . Puede obtener más información sobre esto leyendo la documentación que viene con la extensión y / o la documentación de QBS :





En conclusión, quiero dar las gracias a todos los que me ayudaron a probar esta extensión y me sugirieron nuevas ideas.



Además, le recomendamos que envíe todos los errores, sugerencias y correcciones al rastreador de errores .



All Articles