4. Beginnen met QtCreator en QGIS

Qt Creator is een IDE van de makers van de bibliotheek Qt. Met Qt Creator kunt u elk project in C++ bouwen, maar het is echt geoptimaliseerd voor mensen die werken aan op Qt gebaseerde toepassingen (inclusief mobiele apps).

4.1. QtCreator installeren

Qt Creator is beschikbaar voor alle belangrijke platformen en kan worden gedownload vanaf https://www.qt.io/download (Neem de open source-route). De installatieprocedure is afhankelijk van uw platform.

Als u een op Unix gebaseerd platform uitvoert, kunt u de opdrachtregel gebruiken, bijv. voor Debian:

sudo apt install qtcreator qtcreator-doc

Na het installeren zou u het in uw menu moeten vinden.

4.2. Instellen van uw project

We gaan er van uit dat u al een lokale QGIS kloon heeft die de broncode bevat, en alle benodigde afhankelijkheden etc. voor het bouwen hebt geïnstalleerd. Er zijn gedetailleerde instructies voor toegang tot git en installeren van afhankelijkheden.

Op ons systeem hebben we de code uitgecheckt in $HOME/dev/cpp/QGIS en de rest van het artikel is geschreven met de aanname dat u deze paden zou moeten bijwerken zoals te doen gebruikelijk voor uw lokale systeem.

Gebruik, na het starten van Qt Creator, File ► Open File or Project

Gebruik dan het resulterende dialoogvenster voor bestandsselectie om naar dit bestand te bladeren en het te openen:

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

Qt Creator zal het project parsen en u zult worden gevraagd naar een locatie om te bouwen en opties in het dialoogvenster Configure Project.

Omdat we willen dat QGIS mogelijkheden heeft voor debuggen, willen we alleen het item debug inschakelen en dat vullen met onze bouwlocatie:

  1. Controleer of checkbox Select all kits het item Desktop inschakelt

  2. Deselecteer alles, behalve het subitem checkbox Debug

  3. Vul het pad met de locatie voor de build. Wij maakten een specifieke map build voor Qt Creator:

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

    Het is waarschijnlijk een goed idee om afzonderlijke mappen build te maken voor verschillende branches, als u daarvoor de schijfruimte heeft.

    ../../_images/configureProject.png

Dat is de basis ervan. Druk op de knop Configure Project en QtCreator zal beginnen met het scannen van de boom van de bron voor ondersteuning van automatisch aanvullen en op de achtergrond nog wat huishoudelijk werk doen.

../../_images/configurationDone.png

We willen nog een aantal dingen aanpassen voordat we beginnen te bouwen.

4.3. Instellen van de omgeving voor uw build

Klik op het pictogram Projects aan de linkerzijde van het venster van QtCreator.

../../_images/leftPanel.png

Selecteer de tab Build settings (normaal gesproken standaard actief).

../../_images/buildSettings.png

Het dialoogvenster geeft de Debug buildconfiguratie weer en stelt u in staat instellingen te bewerken in het gedeelte CMake. Hoewel de standaard configuratie genoeg zou moeten zijn voor een eerste doorgang, kunt u, afhankelijk van uw behoeften, meer mogelijkheden inschakelen, zoals:

  • WITH_3D = ON voor renderen van 3D

  • WITH_CUSTOM_WIDGETS = ON om QGIS aangepaste widgets toe te voegen voor ontwerpen van de interface

Druk op Apply Configuration Changes.

Standaard gebruikt Qt Creator alle beschikbare CPU-cores om het bouwen te versnellen met maximum parallelisatie. U zou, om te voorkomen dat uw computer bevriest, een kleiner aantal cores moeten specificeren. In het gedeelte Build Steps:

  1. Druk op het menu Add build step ► en selecteer Custom Process Step

  2. Vul het nieuwe formulier als volgt in:

    • Command: make

    • Arguments: -j4 om 4 cores te gebruiken (instellen is afhankelijk van uw apparaat)

    • Working directory: %{buildDir}

../../_images/customProcess.png

Notitie

Ook, als u de tijd voor het bouwen wilt verkorten, kunt u dat doen met ninja, een alternatief voor make met soortgelijk opties voor het bouwen. U zou het moeten instellen als de CMake generator:

  1. Open Tools ► Options ► Build & Run ► Kits

  2. Selecteer het kit-item Desktop (default) zodat het zijn eigenschappen weergeeft

  3. Druk op Change… naast CMake generator

U bent nu klaar om te bouwen. Druk op de knop build Build aan de linkeronderzijde van het dialoogvenster (of Ctrl+B) om de bouw van het project te starten! Qt Creator zal beginnen met compileren en dat kan de eerste keer soms enige tijd duren, afhankelijk van uw apparaat.

Na het voltooien van het compileren kunt u QGIS uitvoeren door te drukken op de knop runInstall Run.

Het compileren van QGIS maakt ook binary’s aan in de map voor het bouwen. Daarom kunt u ook QGIS uitvoeren vanaf de opdrachtregel met:

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

Soms zou u misschien QGIS willen installeren als een uitvoerbaar bestand, buiten de map voor het bouwen.

  1. Stel CMAKE_INSTALL_PREFIX in op iets waar u schrijftoegang toe heeft (wij gebruiken $HOME/apps). Dat voorkomt het overschrijven van een bestaande installatie van QGIS (bijvoorbeeld door uw pakketbeheerder).

    ../../_images/customInstallPrefix.png
  2. Druk op Apply Configuration Changes om de instellingen bij te werken

  3. Druk op de knop build

  4. Als het bouwen is voltooid vindt u het uitvoerbare bestand qgis in de map $HOME/apps/bin.

4.4. Uitvoeren en debuggen

Nu bent u gereed om QGIS uit te voeren en te debuggen. Open eenvoudigweg een bronbestand en klik in de kolom links om een breekpunt in te stellen.

../../_images/image14.jpeg

Start nu QGIS onder de debugger door te klikken op de knop runDebug Start Debugging aan de linkeronderzijde van het venster.