Installation Guide

To successfully set up Qt for Device Creation, you must closely follow the instructions in this section and perform all the described tasks.

In case of problems, see Troubleshooting.

Requirements for Development Host

Either 64-bit Linux or a Windows system is required to install and use Qt for Device Creation. Instructions in this documentation assume Windows 7 or later or Ubuntu Linux 64-bit 12.04 LTS or later. Other Linux distributions may work, but have not been tested. C/C++ build essentials must be installed on the Linux host.

1. Host Specific Requirements

1.1 Linux: Installing 32-bit Support Libraries

Some of the build tools in Qt for Device Creation are 32-bit programs, and on 64-bit systems they require support libraries for running 32-bit code. To install the required packages in recent versions of Ubuntu, use the following command in a terminal:

sudo apt-get install g++-multilib zlib1g:i386

For older Ubuntu versions such as 12.04, instead do:

sudo apt-get install g++-multilib ia32-libs

1.2 Windows: Installing ADB

Qt Creator needs adb to communicate and deploy data to the target device. You can install adb as a part of the Android SDK Tools Package, which can be downloaded from http://developer.android.com/sdk/index.html#Other. Make sure to select Tools > Android SDK Platform-tools and Extras > Google USB Driver in the Android SDK manager (anything else is not needed and can be disabled).

2. Installing VirtualBox

The Boot to Qt emulator in Qt for Device Creation relies on VirtualBox virtualization software. You can download it from https://www.virtualbox.org/wiki/Downloads or install it via distribution tools.

On Windows you just have to follow the installation wizard of the downloaded package.

If you are running an older Ubuntu system such as 12.04, the version of VirtualBox provided by the distribution is not recent enough. To install a newer version, first add a foreign package source:

wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add -
echo "deb http://download.virtualbox.org/virtualbox/debian $(lsb_release -sc) contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.list
sudo apt-get update

Then, install VirtualBox on your computer:

sudo apt-get install virtualbox-4.3

To configure VirtualBox:

  1. Start the VirtualBox user interface.
  2. Select File > Preferences > Network to open VirtualBox network settings.
  3. Create a new host-only network named vboxnet0 on Linux and VirtualBox Host-Only Ethernet Adapter on Windows. This should be the default naming on those host platforms. Edit its properties:
    1. Change the IPv4 address to and the IPv4 network mask to
    2. In the DCHP Server tab, select the Enable Server check box.
    3. Change the server address to
    4. Change both the lower and upper address bounds to

If a firewall is enabled on the development host, it needs to allow TCP and UDP packets between your host and the virtual machine.

3. Installing Qt for Device Creation

  1. Download the binary Qt for Device Creation installer.
  2. On Linux make sure it is executable by using one of the following methods:
    • Enter the chmod +x <filename> command.
    • Right-click the file, and select Properties > Permissions > Allow executing file as program.
  3. Run the installer and follow its instructions.

Note: Do not execute the installer as root user or with sudo.

The installer will let you select a directory where Qt for Device Creation will be installed. In this documentation, the installation directory is referred to as <INSTALL_DIR>. The default installation directory is ~/Qt on Linux and C:\Qt on Windows.

4. Install Boot to Qt on Target Devices

If you target only the emulator, you can skip this step.

Before you can deploy and test your Qt application on hardware, you must flash the target device with an image that contains the Boot to Qt stack. The steps vary from device to device. Follow the instructions specific to your device in Preparing Hardware.

5. Setting up USB Access to Embedded Devices

If you target only the emulator, you can skip this step.

On Ubuntu Linux, the development user account must have access to plugged in devices. To allow the development user access to the device via USB, create a new udev rule:

  1. Run the following command in a shell:
    echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="18d1", TAG+="udev-acl", TAG+="uaccess"' | sudo tee -a /etc/udev/rules.d/70-boot2qt.rules
  2. Connect the running device to the development host with a USB cable. If the device is already connected, disconnect and reconnect the USB cable after running the command above.

The system log files /var/log/udev and /var/log/syslog may provide relevant information in case of connection problems.

You can confirm that the connection is working by running the following command on Linux:

<INSTALL_DIR>/Tools/b2qt/adb devices -l

Or the following command on Windows:

<Android-SDK-Tools-install-dir>\platform-tools\adb.exe devices -l

The output should be a list of connected Boot to Qt (and Android) devices, identified with a serial number and a name. If your device is missing from the list, or the serial number is ??????, the connection is not working properly. Check that the device is powered on, and disconnect and reconnect the USB cable.

The emulator may be listed as well. Its serial number is its IP and the port number:

6. Configuring a Device Kit in Qt Creator

After you have prepared the hardware, you must perform one final step to set up the development tools in Qt Creator for your device. That is, you must configure the correct device to be used for each build and run kit. Connect your device to the development host via USB and launch Qt Creator. In Qt Creator:

  1. Select Tools > Options > Build & Run > Kits.
  2. Select one of the predefined kits starting with Boot to Qt... that matches the type of your device.
  3. Select the correct device in the Device field.
  4. Select OK.

You are now ready to start developing for your device. For more information, see Building and Running an Example.

Available under certain Qt licenses.
Find out more.