C
Qt Board Support Packages
Qt Board Support Package (QBSP) is an extension to the Qt online installer using Qt Installer Framework. It provides a way to deliver and install additional content that is not directly available from the online repositories.
Overview
You can download QBSP files separately either from the Qt Account Downloads or directly from your development board's hardware vendor.
A QBSP contains a cross-compilation toolchain that gets integrated into Qt Creator, and a device image that can be used to boot your device using Boot to Qt software stack.
Usage
You can use the MaintenanceTool to install a downloaded QBSP file:
- Start the MaintenanceTool, located in Qt install directory.
- Select Add or Remove Components.
- Click on Browse QBSP files and select the QBSP file.
After this, the content of the QBSP is available in the component selection tree. Select the ones you are interested in and finalize the installation.
Alternatively, you can use the command line option --installCompressedRepository
to instruct MaintenanceTool to use a specific QBSP file:
./MaintenanceTool --installCompressedRepository <Path-to-QBSP-file>
Building a QBSP with Yocto
The creation of QBSP is integrated into the Yocto meta layer (meta-boot2qt
) which is used for creating both the toolchain and the device image. In short, a QBSP for Boot to Qt is generated when issuing a following bitbake command:
bitbake meta-b2qt-embedded-qbsp
This builds both the toolchain (meta-toolchain-b2qt-embedded-qt5-sdk
) and the image (b2qt-embedded-qt5-image
), and then packages them into a QBSP file. The generated QBSP file is located in the tmp/deploy/qbsp/
directory in Yocto build environment.
The QBSP packaging respects the SDKMACHINE
variable. For example, if SDKMACHINE
is set to x86_64-mingw32
, a Windows toolchain will be packaged into the QBSP.
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. By default, Boot to Qt images include an .img file and a .conf file used by the Flashing Wizard
.
QBSP_IMAGE_CONTENT = "\ ${IMAGE_LINK_NAME}.img \ ${IMAGE_LINK_NAME}.conf \ "
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 Variable | Purpose | Default value in Boot to Qt |
---|---|---|
QBSP_SDK_TASK | Task for creating the external SDK included in the QBSP. | meta-toolchain-b2qt-embedded-qt5-sdk |
QBSP_IMAGE_TASK | Task for creating the device image included in the QBSP. The recipe needs to inherit qbsp-image.bbclass to generate the expected packages. | b2qt-embedded-qt5-image |
QBSP_IMAGE_CONTENT | List of files that are packaged as part of the QBSP device image. | ${IMAGE_LINK_NAME}.img ${IMAGE_LINK_NAME}.conf |
QBSP_NAME | Base name for the QBSP, visible in the installer description. | Boot2Qt ${QTVERSION} |
QBSP_INSTALLER_COMPONENT | Unique 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:Qt for Device Creation └ Boot to Qt Software Stack ${QTVERSION} └ ${DEPLOY_CONF_NAME} | embedded.b2qt.${QTVERSION}.yocto.${MACHINE} |
DEPLOY_CONF_NAME | Descriptive name for the target machine. Defaults to ${MACHINE} . | Depends on ${MACHINE} |
QBSP_INSTALL_PATH | Location under the Qt SDK where the files are installed. | /${PV}/Boot2Qt/${MACHINE} |
QBSP_LICENSE_FILE | If 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_NAME | Descriptive name for the license shown in the installer. | Depends on ${MACHINE} |
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 installer.
Available under certain Qt licenses.
Find out more.