Embedded Software - Autostart Qt applicatie een screenshot van een computer

Automatisch starten Qt-applicatie

Yocto en Raspberry Pi 4

meta-layer instellen

Voor de eerste stap moet u de meta-layerconfiguratie van uw Yocto-project instellen. We hebben 2 aangepaste metalayers gemaakt en een downloadlink in de verdere tekst geplaatst.

Meta-layer opstartscherm

U kunt een meta-layer toevoegen om een aangepast opstartscherm te gebruiken. Hoe deze meta-layer te gebruiken wordt beschreven in Yocto Raspberry Pi 4 met aangepast opstartscherm.

U kunt het zip-bestand voor de meta-layer downloaden via de browser van meta-interelectronix-rpi.zip.

Meta-layer Qt en demoapplicatie

U kunt het zip-bestand voor de meta-layer downloaden via de browser van meta-interelectronix-rpi-qt.zip.

Deze meta-layer bevat instelinformatie voor onder andere Qt en de Qt-demoapplicatie. We gebruiken de Qt-demoapplicatie voor automatisch opstarten zoals deze beschikbaar is in de Qt recepten.

De layer bevat ook de beeldinformatie "qt5-ix-basic-image", die we later nodig hebben voor het bouwen van het project met

bitbake -k qt5-ix-basic-image

Meta-layer opnemen in bblayers.conf

Nu kunt u de gedownloade layers toevoegen aan uw bblayers.conf-bestand in uw Yocto-project. Als u de setup gebruikt zoals beschreven in Yocto build Raspberry Pi 4 in een dockeromgeving dan zou het bblayers.conf-bestand er als volgt uit moeten zien:

BBLAYERS ?= " \
  /workdir/poky-honister/meta \
  /workdir/poky-honister/meta-poky \
  /workdir/poky-honister/meta-yocto-bsp \
  /workdir/poky-honister/meta-openembedded/meta-oe \
  /workdir/poky-honister/meta-openembedded/meta-multimedia \
  /workdir/poky-honister/meta-openembedded/meta-networking \
  /workdir/poky-honister/meta-openembedded/meta-perl \
  /workdir/poky-honister/meta-openembedded/meta-python \
  /workdir/poky-honister/meta-raspberrypi \
  /workdir/poky-honister/meta-security \ 
  /workdir/poky-honister/meta-qt5 \
  /workdir/rpi-build/meta-interelectronix-rpi \
  /workdir/rpi-build/meta-interelectronix-rpi-qt \
  "

Als u uw eigen project gebruikt, moet u de bestandspaden aanpassen aan uw behoeften.

Qt-configuratie automatisch starten

Om de Qt-demoapplicatie automatisch te starten, gebruiken we systemd en installeren we een service. Alle benodigde bestanden en configuratiebestanden zijn opgenomen in het hierboven gedownloade meta-interelectronix-rpi-qt.zip-bestand.

qt_demo_start.service

De benodigde bestanden worden opgeslagen in de directory "meta-interelectronix-rpi-qt/recipes-ext/systemd/...".

local.conf

U moet systemd activeren in het local.conf-bestand in uw Yocto-project.

Yocto local.conf

U moet in ieder geval uw local.conf-configuratiebestand van uw project aanpassen. Download bblayers.conf en local.conf van rpi4-build.zip en gebruik ze zoals ze zijn of inspecteer ze en kopieer de benodigde secties naar uw project.

systemd

Om systemd te activeren moeten de volgende regels aan uw local.conf-bestand worden toegevoegd:

## systemd settings
DISTRO_FEATURES:append = " security systemd usbhost ${DISTRO_FEATURES_LIBC}"

INIT_MANAGER = "systemd"

VIRTUAL-RUNTIME:init_manager = "systemd"
VIRTUAL-RUNTIME:initscripts = "systemd-compat-units"

Qt-licentie-informatie

Let op als u Qt gebruikt in een commercieel project. De licentieovereenkomsten van Qt zijn niet gemakkelijk te begrijpen en niet gemakkelijk te gebruiken. U vindt enkele kritische gedachten en inzichten in de blog Yocto/Qt5: hello-qt part2 - Licensing van Robert Berger.

Suggesties of fouten

Als u suggesties voor verbeteringen heeft of fouten ontdekt, aarzel dan niet om het contactformulier aan het einde van deze pagina te gebruiken en aan ons door te geven.

Auteursrechtlicentie

Copyright © 2022 Interelectronix e.K.
Deze broncode van het project is gelicentieerd onder de GPL-3.0 licentie.