C

Customizing QBSP content

Qt Board Support Package (QBSP) provides needed components for using Qt on an embedded device. QBSPs are installed using Qt Online Installer, either from online content or from a separately downloaded .qbsp file.

When using Boot to Qt Software Stack, a QBSP contains a cross-compilation toolchain that is integrated into Qt Creator, and a device image that you can use to boot your device using Boot to Qt Software Stack. You can configure the QBSP to contain different content and change the way Qt Online Installer shows and installs the content.

QBSP Yocto Recipes and Classes

The following classes and variables control the creation of a QBSP. These are useful when a target hardware has not been integrated into meta-boot2qt, or there is a need to modify specific aspects of a package.

qbsp-image.bbclass

The QBSP needs a suitable device image to include into the package. To do this, inherit qbsp-image.bbclass in the image recipe that will be used. The content of the package is controlled with the QBSP_IMAGE_CONTENT variable. Usually Boot to Qt images include a .wic.xz file, a .conf file used by the Flashing Wizard and a readme file.

QBSP_IMAGE_CONTENT = "\
    ${IMAGE_LINK_NAME}.${DEPLOY_CONF_IMAGE_TYPE} \
    ${IMAGE_LINK_NAME}.conf \
    ${QBSP_README} \
    "

qbsp.bbclass

This is the main class that handles the creation of the QBSP. Various aspects of the QBSP can be controlled through the following variables:

QBSP VariablePurposeUsual value in Boot to Qt
QBSP_SDK_TASKTask for creating the external SDK included in the QBSP.meta-toolchain-b2qt-embedded-qt6-sdk
QBSP_IMAGE_TASKTask for creating the device image included in the QBSP. The recipe needs to inherit qbsp-image.bbclass to generate the expected packages.b2qt-embedded-qt6-image
QBSP_IMAGE_CONTENTList of files that are packaged as part of the QBSP device image.${IMAGE_LINK_NAME}.${DEPLOY_CONF_IMAGE_TYPE}
${IMAGE_LINK_NAME}.conf
${QBSP_README}
QBSP_NAMEBase name for the QBSP, visible in the installer description.Boot2Qt ${QT_VERSION}
QBSP_INSTALLER_COMPONENTUnique component name. This string determines where in the installer tree the component is placed in relation to other components. With the default value, the tree is constructed as follows:
Boot to Qt Software Stack
   └ Boot to Qt Software Stack ${QT_VERSION}
       └ ${DEPLOY_CONF_NAME}
embedded.b2qt.${QT_VERSION}.yocto.${MACHINE}
DEPLOY_CONF_NAMEDescriptive name for the target machine. Defaults to ${MACHINE}.[device vendor] [device model]
DEPLOY_CONF_IMAGE_TYPEImage type for IMAGE_LINK_NAME, such as img, wic or wic.xz.wic.xz
QBSP_INSTALL_PATHLocation under the Qt SDK where the files are installed./${PV}/Boot2Qt/${MACHINE}
QBSP_LICENSE_FILEIf a separate license agreement needs to be accepted before installation, this variable defines the file that contains the license text.Depends on ${MACHINE}
QBSP_LICENSE_NAMEDescriptive name for the license shown in the installer.Depends on ${MACHINE}
QBSP_READMEA file containing installation instructions for the device. See qbsp-readme.bb recipe for more details.README

meta-b2qt-embedded-qbsp.bb

meta-b2qt-embedded-qbsp is the meta-recipe that builds the QBSPs with Boot to Qt image and toolchain. It inherits qbsp.bbclass and sets dependencies to the selected image and toolchain recipes. In addition, it sets variables to control the install locations and how the content is displayed in the Qt Online Installer.

Verifying QBSP Build

After you have built the QBSP file, you can verify it with the Qt Online Installer. If the QBSP file was successfully created, you can load it into the installer and install the QBSP's content.

Verify your QBSP build as follows:

  • Launch the Qt Online Installer.
  • Follow the instructions in the wizard until you reach the Select Components page.
  • Select Browse QBSP Files (1).
  • Browse to your QBSP file and select Open.
  • Content of your QBSP file appears in the tree view.
  • Select the component(s) to be installed and follow instructions in the wizard.

You should be able to find the installed QBSP content under your <Qt installation directory>.

Available under certain Qt licenses.
Find out more.