Yocto – Qt-Applikationen integrieren

Nachdem nun eine vollständige Build-Umgebung steht und eigene Qt-Anwendungen bereits mit Qt Creator erstellt werden können, geht es im nächsten Schritt darum, diese Anwendungen dauerhaft ins Yocto-Image zu integrieren.

Zunächst erweitern wir den Layer meta-raspilab um ein Verzeichnis für eigene Anwendungen. Dieses wird die Rezepte und Quelldateien der Anwendungen enthalten:

Die Datei hellowidget_0.1.bb definiert den Buildprozess der Anwendung sowie das Zielverzeichnis im Root-Filesystem.
Wichtig: Achte auf konsequente Kleinschreibung, insbesondere im Rezeptnamen – CamelCase kann zu BitBake-Warnungen führen.

Damit die Anwendung auch tatsächlich ins Root-Filesystem gelangt, muss sie im Image-Rezept referenziert werden.

In dem Unterverzeichnis files werden alle Dateien die zum bauen der Anwendung benötigt werden abgelegt.

Wird das Projekt mit Qt Creator erstellt, sollte die .pro-Datei von Deployment- oder Run-Konfigurationen bereinigt werden. Diese erzeugen in der Regel Pfade oder Befehle, die im Yocto-Buildprozess zu Fehlern führen – insbesondere wenn dort INSTALLS +=-Anweisungen auftauchen, die nicht zum Yocto-Kontext passen.

Nachdem alle unten aufgeführten Dateien erstellt wurden, lässt sich das Image wie gewohnt bauen:

Anschließend das Image auf eine SD-Karte schreiben, das Zielsystem booten und anmelden. Die Anwendung sollte direkt aus der Konsole startbar sein.

Die folgenden Quelltexte können auch auf meinem Git-Repository gefunden werden.