C

Troubleshooting

See also the list of Known Issues.

General Issues

I have problems deploying/launching the application in Qt Creator

Check that the device is properly connected to the development host via USB or Ethernet (depending on the device). See Connectivity Issues.

If using the emulator, see X11 Requirements for Emulator or Windows Requirements for Emulator.

I have problems deploying/launching a Qt or Qt Quick example application

Because of a technical peculiarity in qmake, it is not possible to get correct deployment setup for any application that is placed inside a Qt source code tree.

The workaround is to copy the example sources to a location outside the Qt source tree, and open this copy of the example application instead.

I have problems launching or running applications on hardware after updating the SDK

Remember to repeat the process of updating also your device with the latest version of Boot to Qt. See Installing Boot to Qt on Target Devices.

Booting BD-SL-i.MX6 stops with '6x_bootscript not found' error

Check the U-Boot version number. It should start with either 2012 or 2013. If it is 2009.xx, an upgrade of the bootloader is required. For more information, see:

How do I update NVIDIA image to Jetson TX1 if the device does not boot?

If booting NVIDIA Jetson TX1 fails with an error message FDT creation failed! hanging...### ERROR ### Please RESET the board ###, you may need to update the NVIDIA image in your Jetson TX1 device.

Note: NVIDIA image flashing is supported only in Linux.

To update the NVIDIA image, follow the instructions provided by NVIDIA in http://developer2.download.nvidia.com/embedded/L4T/r24_Release_v2.1/BSP/l4t_quick_start_guide.txt.

Note: In the NVIDIA instructions, you are asked to download the latest L4T release package for your developer system. Download the packages:

Flash the device with the NVIDIA image before you try to boot the Boot to Qt image.

I see a firewall warning message on Windows after starting the emulator

On Windows, you may see a firewall warning message after starting the emulator for the first time. The warning message says that some emulator features are blocked on local and remote networks. User is asked to allow or cancel the connections.

You need to update the firewall settings:

  1. Select Firewall Settings for your network.
  2. Select Advanced settings.
  3. Select Inbound rules.
  4. Remove all entries of emulator.exe.
  5. Start the emulator.
  6. When the firewall warning message appears, allow all connections.

How do I get HDMI output working properly on BeagleBone Black?

Depending on the HDMI monitor, the cable, and the build variant of the BeagleBone Black device, it may not be able to drive an HDMI display in a stable way; the image may disappear or stutter. These issues are not caused by the Boot to Qt stack.

More details and possible solutions can be found here.

Something crashed!

The following command shows the system log:

<INSTALL_DIR>/Tools/b2qt/adb logcat

Note: When terminating an application from Qt Creator, you may see the message Terminating application. Error running process: Process crashed. This is normal and does not indicate a problem in your code; a SIGTERM signal is sent to the application, and Qt interprets it as a crash.

Mouse or touch input does not work

See Customization.

Note: On Embedded Linux hotplugging is usually supported for mouse and keyboard devices.

Application stops with 'EGLFS: OpenGL windows cannot be mixed with others.'

OpenGL and Qt Quick 2 applications can only have one fullscreen window existing at a time. Trying to create another OpenGL window, or trying to mix an OpenGL window with a raster one will display the above message and abort the application.

Note: For raster windows (software rendered content based on QWidget or QPainter), there is no such limitation.

I cannot edit the contents of appcontroller.conf on the device

The file system where this file is located may be mounted as read-only.

See Customization.

How to enable C++11 features

To enable C++11 features in the compiler, add CONFIG += c++11 to the .pro file.

I cannot start the Qt virtual keyboard. What can I do to make it appear?

In some environments, like in VirtualBox, drivers are not be properly set up when they are installed. This causes problems for Qt Virtual Keyboard as the keyboard screen is not visible at all or the topmost part of the keyboard screen is black.

You can solve this issue by forcing your application to use Qt Quick 2D Renderer:

export QMLSCENE_DEVICE=softwarecontext

How can I run a script on my target device when I click the run button in Qt Creator?

If you are developing with Qt for Device Creation 5.8 or earlier, you can add a custom deploy step Custom Remote Command (via adb shell) as instructed in Developing with Qt for Device Creation 5.8 or Earlier.

if you are developing with Qt for Device Creation 5.9 or later, you can add a custom deploy step Custom Remote Command as instructed in Developing with Qt for Device Creation 5.9 or Later.

When you add the custom remote command, remember to include a full path to your script in the remote command. Also, ensure that your script has enough execute permissions.

How can I set a remote deploy directory for my application?

The remote deploy directory depends on the value of qmake INSTALLS variable that you set in your project's .pro or .pri file.

In order to deploy to /my/installation/directory, add the following code to your .pro file, :

target.path = /my/installation/directory
INSTALLS += target

If you use .pri file, you can define as follows:

target.path = /opt/$${TARGET}/bin

Connectivity Issues

I cannot connect to my hardware device via USB

If you are using Linux, check that you have set an udev rule as instructed in Setting up USB Access to Embedded Devices.

Note: There are different udev rules for Qt 5.8 and older, and for Qt 5.9 and newer.

In case you need to report a new bug or contact Qt support, include a QDB log file if you are using Qt 5.9 or newer. You will find the log file from %APPDATA%\qdb\qdb.log on Windows and ~/.local/share/qdb/qdb.log on Linux.

Additionally on Windows, you may need to install or update the Android Device driver (ADB) if you are using Qt 5.8 or older. You can check whether a driver is already installed when a device is attached via the Device Manager. If you haven't installed any driver there should be an USB Function Filesystem under Other devices. If this is the case you have to install the USB driver by the following steps:

  1. Open Other devices > USB Function Filesystem).
  2. Switch to the Driver tab and click Update Driver.
  3. Do not let windows search automatically for an updated driver, but select "Browse My Computer for driver software".
  4. Select "Let me pick from a list of device drivers on my computer".
  5. Open "Have Disk..."
  6. Install the driver that is located at <Android-SDK-Tools-install-dir>\extras\google\usb_driver\android_winusb.inf

If you already have an Android ADB Interface under Android Device you may need to update the driver. This can be achieved by running the previous steps on the Android Device > Android ADB Interface.

adb fails with "error: more than one device and emulator"

You have to specify which device you want adb to talk to, using adb's -s <serial-number> option. Use the following command to find to see the serial number of the connected devices:

<INSTALL_DIR>/Tools/b2qt/adb devices

The emulator cannot connect to the Internet

By default, the VirtualBox is configured to use a host-only network, so external connections do not work in the emulator.

You may be able to enable Internet connectivity with another virtual network adapter in NAT mode by adapting these instructions.

The emulator is stuck in Waiting for display data or fails to start properly

Check the output of the following command:

<INSTALL_DIR>/Tools/b2qt/adb devices

If the emulator (192.168.56.101) is not listed there, try connecting to it:

<INSTALL_DIR>/Tools/b2qt/adb connect 192.168.56.101

If the emulator is already listed, try disconnecting it:

<INSTALL_DIR>/Tools/b2qt/adb disconnect 192.168.56.101

And then close the emulator and retry.

What are the user and password to access my embedded Linux device?

Embedded Linux devices can be accessed using user root and an empty password.

Available under certain Qt licenses.
Find out more.