4. Iniciando y ejecutando QtCreator y QGIS

QtCreator es un IDE de los creadores de la biblioteca Qt. Con QtCreator puede construir cualquier proyecto C++, pero está realmente optimizado para personas que trabajan en aplicaciones basadas en Qt (incluidas las aplicaciones móviles).

4.1. Instalando QtCreator

Qt Creator está disponible en la mayor parte de las plataformas y puede descargarse en https://www.qt.io/download (Vaya a la ruta de código abierto). El procedimiento de instalación depende de su plataforma.

Si está ejecutando una plataforma similar a Unix, puede usar la línea de comandos, por ejemplo, en Debian:

sudo apt install qtcreator qtcreator-doc

Tras instalar lo encontrará en su menú.

4.2. Estableciendo su proyecto

Suponemos que ya tiene un clon de QGIS local que contiene el código fuente y ha instalado todas las dependencias de compilación necesarias, etc. Hay instrucciones detalladas para git access y instalación de dependencias.

En nuestro sistema, hemos verificado el código en $HOME/dev/cpp/QGIS y el resto del artículo está escrito asumiendo eso. Debe actualizar estas rutas según corresponda para su sistema local.

Tras lanzar QtCreator haga Archivo ► Abrir Archivo o Proyecto

Después utilice el diálogo de selección de archivos resultante para buscar y abrir este archivo:

$HOME/dev/cpp/QGIS/CMakeLists.txt
../../_images/selectCMakeLists.png

QtCreator analizará el proyecto y se le pedirá una ubicación de compilación y opciones en el cuadro de diálogo Configurar proyecto.

Como queremos que QGIS tenga capacidades de depuración, solo habilitaremos la entrada de depuración y la completaremos con nuestra ubicación de compilación:

  1. Marque checkbox Seleccionar Todos los Kits habilitando la entrada Desktop

  2. Desmarque todo menos el elemento secundario checkbox Debug

  3. Complete la ruta con el directorio de compilación. Para nuestro propósito, creamos un directorio de compilación específico para QtCreator:

    $HOME/dev/cpp/QGIS/build-master-qtcreator
    

    Probablemente sea una buena idea crear directorios de compilación separados para diferentes ramas si puede permitirse el espacio en disco.

    ../../_images/configureProject.png

Eso es lo básico. Presione el botón Configurar proyecto y QtCreator comenzará a escanear el árbol de origen en busca de soporte de autocompletado y hará algunas otras cosas de limpieza en segundo plano.

../../_images/configurationDone.png

Queremos modificar algunas cosas antes de comenzar a construir.

4.3. Configurando el entorno de compilación

Click en el icono Proyectos a la izquierda de la ventana de QtCreator.

../../_images/leftPanel.png

Seleccione la pestaña de Ajustes Build (normalmente activa por defecto).

../../_images/buildSettings.png

El cuadro de diálogo muestra la configuración de compilación Depurar y le permite editar la configuración en la sección CMake. Si bien la configuración predeterminada debería ser suficiente para una primera pasada, según sus necesidades, es posible que desee habilitar más funciones como:

  • WITH_3D = ON para renderizado 3D

  • WITH_CUSTOM_WIDGETS = ON para agregar widgets personalizados de QGIS para el diseño de la interfaz

Presione Apicar Cambios de Configuración.

De forma predeterminada, Qt Creator utiliza todos los núcleos de CPU disponibles para acelerar la construcción con la máxima paralelización. Para evitar que su computadora se congele, debe especificar un número menor de núcleos. En la sección Build Steps:

  1. Presione el menú Add build step ► y seleccione Custom Process Step

  2. Rellene el nuevo formulario como sigue:

    • Command: make

    • Arguments: -j4 para usar 4 núcleos (la configuración depende de tu dispositivo)

    • Working directory: %{buildDir}

../../_images/customProcess.png

Nota

Además, si desea reducir sus tiempos de construcción, puede hacerlo con ninja, una alternativa a make con opciones de construcción similares. Debería configurarlo como generador CMake:

  1. Abre Herramientas ► Opciones ► Construir y Ejecutar ► Kits

  2. Seleccione la entrada del kit Desktop (predeterminado), mostrando sus propiedades

  3. Presione Cambiar… al lado de generador CMake

Ahora está listo para construir. Presione el botón build Construir en la parte inferior izquierda del diálogo (o Ctrl+B) para iniciar la construcción del proyecto. Qt Creator comenzará a compilar y esto puede llevar algún tiempo la primera vez, dependiendo de su dispositivo.

Al final de la compilación, puede ejecutar QGIS presionando el botón runInstall Ejecutar.

La compilación de QGIS también genera binarios en el directorio de compilación. Por lo tanto, puede ejecutar QGIS desde la línea de comando usando:

cd $HOME/dev/cpp/QGIS/build-master-qtcreator
./output/bin/qgis

A veces, es posible que desee instalar QGIS como un ejecutable, fuera del directorio de compilación.

  1. Establezca el CMAKE_INSTALL_PREFIX en un lugar al que tenga acceso de escritura (usamos $HOME/apps). Esto evitaría sobrescribir una instalación de QGIS existente (por su administrador de paquetes, por ejemplo).

    ../../_images/customInstallPrefix.png
  2. Presione Aplicar Cambios de Configuración para acutalizar los ajustes

  3. Presiona el botón build

  4. Cuando la compilación esté completa, encontrará el ejecutable qgis en la carpeta $HOME/apps/bin.

4.4. Ejecución y depuración

Ya está listo para ejecutar y depurar QGIS. Para establecer un punto de ruptura, abra simplemente un archivo fuente y pulse en la columna de la izquierda.

../../_images/image14.jpeg

Ahora inicie QGIS bajo el depurador haciendo clic en el botón runDebug Iniciar depuración en la parte inferior izquierda de la ventana.