From 5bbd7f92e895d63439165fd0d3dfd5ee80bd6d7b Mon Sep 17 00:00:00 2001 From: Topi Reinio Date: Mon, 30 Jun 2014 11:37:43 +0200 Subject: Doc: split up the docs into multiple files Split up the monolithic b2qt.qdoc into separate documentation files, making future edits and maintenance easier. Device-specific instructions are created in devices/ subdirectory, and shared documentation (referenced in multiple places) are moved to shared/. Change-Id: I9425297781a1dda9c08a149b0870a0389c575560 Reviewed-by: Samuli Piippo Reviewed-by: Kalle Viironen --- src/doc/src/b2qt.qdoc | 1832 ------------------------------------------------- 1 file changed, 1832 deletions(-) delete mode 100644 src/doc/src/b2qt.qdoc (limited to 'src/doc/src/b2qt.qdoc') diff --git a/src/doc/src/b2qt.qdoc b/src/doc/src/b2qt.qdoc deleted file mode 100644 index ebb8b11..0000000 --- a/src/doc/src/b2qt.qdoc +++ /dev/null @@ -1,1832 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2014 Digia Plc -** All rights reserved. -** For any questions to Digia, please use the contact form at -** http://qt.digia.com/ -** -** This file is part of Qt Enterprise Embedded. -** -** Licensees holding valid Qt Enterprise licenses may use this file in -** accordance with the Qt Enterprise License Agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and Digia. -** -** If you have questions regarding the use of this file, please use -** the contact form at http://qt.digia.com/ -** -****************************************************************************/ - -/*! - \contentspage{index.html}{Qt Enterprise Embedded} - \page index.html - \nextpage qtee-overview.html - \title Qt Enterprise Embedded - - \SDK provides a fully-integrated solution to get you started immediately - with software development on your embedded device with a tailored user - experience for embedded Linux and embedded Android. \SDK contains the tools - you need for fast, easy, and fully-integrated embedded device application - development. It comes with \B2Q, a light-weight UI stack for embedded - systems, and the Qt Creator integrated development environment (IDE) with - preconfigured build targets for hardware platforms, as well as an emulator - for testing the applications. - - \e{\b{IMPORTANT:} Make sure to follow the \l{Installation Guide} - closely!} - - \section1 Contents - - \list - \li \l{About Qt Enterprise Embedded} - \li \l{Installation Guide} - \li \l{Supported Platforms} - \li \l{Preparing Hardware} - \list - \li \l{Preparing Nexus 7 (2012/2013)}{Nexus 7 (2012/2013) (embedded Android)} - \li \l{Preparing BD-SL-i.MX6}{BD-SL-i.MX6 (embedded Android and Linux)} - \li \l{Preparing SABRE SD i.MX6Quad}{SABRE SD i.MX6Quad (embedded Linux)} - \li \l{Preparing Toradex Apalis iMX6}{Toradex Apalis iMX6 (embedded Linux)} - \li \l{Preparing BeagleBone Black}{BeagleBone Black (embedded Android and Linux)} - \li \l{Preparing BeagleBoard-xM}{BeagleBoard-xM (embedded Linux)} - \li \l{Preparing Raspberry Pi}{Raspberry Pi Model B (embedded Linux)} - \endlist - \li \l{Building and Running Embedded Applications} - \list - \li \l{Special Build & Run Options} - \endlist - \li \l{Customization} - \li \l{Building Your Own Embedded Linux Image} - \li \l{ChangeLog} - \li \l{Troubleshooting} - \li \l{License Information} - \endlist - - \section1 Reference Documentation - - \list - \li \l{Add-On QML Types} - \endlist -*/ - -/*! - \contentspage{index.html}{Qt Enterprise Embedded} - \page qtee-overview.html - \previouspage index.html - \nextpage qtee-installation-guide.html - - \title About Qt Enterprise Embedded - - \SDK has two main parts: - - \list - \li Development environment that is installed on a Linux development - desktop by using an online installer - \li \B2Q - \endlist - - \section1 About the Development Environment - - The development is done with the Qt Enterprise libraries and device - deployment can be done with one click directly from Qt Creator to a device - connected via USB. Alternatively, you can deploy the application locally - directly to the \B2Q Emulator that is running the full target software stack - as in the device. - - As with any Qt based application, the same application can be deployed to - desktop and mobile OS targets as well. - - \section1 About \B2Q - - \e{\b{\B2Q}} is a light-weight, Qt-optimized, full software stack for - embedded systems that is installed into the actual target device. This is - done by flashing the device's memory card or internal memory directly with a - pre-built image that comes with the development environment. - - \B2Q supports two different operating systems: - - \list - \li \b{\B2QA} where the software stack is based on the Android Kernel - (version 4.1 or higher) and selected middleware. It includes a lean - software stack where Qt/QML replaces the top Java graphical layer - and removes the Zygote process layer as well the Android home screen - enabling better and faster development where modern UIs are at the - forefront. - - \li \b{\B2QL} where the software stack is using the traditional embedded - Linux kernel built with the Yocto Poky reference system (Yocto 1.6 - \e Daisy release). The Embedded Linux variant is designed for great - customization possibilities. It contains only components required in - the embedded device, resulting in smaller image sizes while keeping - valuable development tools available. - \endlist - - Both versions have been tested and verified on a number of different - hardware configurations. \B2Q support is not limited to the devices used - as reference platforms, it can be made to run on a variety of hardware. - - \section1 About Qt - - \l{http://qt.digia.com/}{Qt} is a full development framework with tools - designed to streamline the creation of applications and user interfaces - for desktop, embedded, and mobile platforms. - - \list - \li \b{Qt Framework} - intuitive APIs for C++ - and CSS/JavaScript-like programming with - \b{Qt Quick} for rapid UI - creation - \li \b{Qt Creator IDE} - powerful cross-platform integrated development - environment, including UI designer tools and on-device debugging - \li \b{Tools and toolchains} - internationalization support, embedded - toolchains and more. - \endlist - - With Qt, you can reuse code efficiently to target multiple platforms - with one code base. The modular C++ class library and development tools - enable developers to create applications for one platform and easily - build and run to deploy also on other platforms. - - - \section1 \B2Q vs Qt for Android - - \image b2qt-vs-qt-for-android.png - - \e{\b{Qt for Android}} is a port of the Qt Framework to be used for application - development on the Android platform. Its purpose is to enable development - of applications that can run on Android devices. For developers writing - applications for the Android ecosystem, Qt for Android is the right choice. - - \b{\B2QA} tries to strip down the Android - stack to the bare minimum, relying only on basic Linux - features. The majority of the Android stack, such as - \e{Dalvik virtual machine} is not running in \B2Q, - resulting in faster startup times, lower memory consumption and - overall better performance. -*/ - -/*! - \page qtee-installation-guide.html - \title Installation Guide - \previouspage qtee-overview.html - \nextpage qtee-supported-platforms.html - - To successfully set up \SDK, you must closely follow the instructions in - this section and perform all the described tasks. - - In case of problems, see the \l{Troubleshooting} information and the - \l {Known Issues} in \SDK \l {product page}. - - \target Requirements for Development Host - \section1 Requirements for Development Host - - A 64-bit Linux system is required to install and use \SDK. Instructions - in this documentation assume 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. - - \target Installing 32-bit Support Libraries - \section1 1. Installing 32-bit Support Libraries - - Some of the build tools in \SDK 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: - - \badcode - sudo apt-get install g++-multilib zlib1g:i386 - \endcode - - For older Ubuntu versions such as 12.04, instead do: - - \badcode - sudo apt-get install g++-multilib ia32-libs - \endcode - - \target Installing VirtualBox - \section1 2. Installing VirtualBox - - The \B2Q emulator in \SDK relies on VirtualBox virtualization software. You can - download it from \l{https://www.virtualbox.org/wiki/Linux_Downloads} or - install it via distribution tools. - - If you have older Ubuntu versions such as 12.04 you have to install a newer - version of VirtualBox than your distribution does provide. - You have to add a foreign package source: - - \badcode - 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 - \endcode - - Now install VirtualBox on your computer - \badcode - sudo apt-get install virtualbox-4.3 - \endcode - - To configure VirtualBox: - - \list 1 - \li Start the VirtualBox user interface. - \li Select \b{File > Preferences} > \b{Network} to open VirtualBox - network settings. - \li Create a new network named \e{vboxnet0} and edit its properties: - - \list 1 - \li Change the IPv4 address to \c{192.168.56.1} and the IPv4 network - mask to \c{255.255.255.0}. - \li In the \b{DCHP Server} tab, select the \b{Enable Server} check - box. - \li Change the server address to \c{192.168.56.1}. - \li Change both the lower and upper address bounds to - \c{192.168.56.101}. - \endlist - \endlist - - If a firewall is enabled on the development host, it needs to - allow TCP and UDP packets between your host and the virtual - machine. - - \section1 3. Installing \SDK - - \list 1 - - \li Download the binary \SDK installer, and make sure it is executable - by using one of the following methods: - - \list - \li Enter the \c{chmod +x } command. - \li Right-click the file, and select \b{Properties} > - \b{Permissions} > \b{Allow executing file as program}. - \endlist - - \li Run the installer and follow its instructions. - - \endlist - - \note Do not execute the installer as root user or with sudo. - - The installer will let you select a directory where \SDK will be - installed. In this documentation, the installation directory is referred - to as \b{\c{}}. The default installation directory is - \tt{~/Qt}. - - \target Installing Boot to Qt on Target Devices - \section1 4. Install \B2Q on Target Devices - - \e{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 - \B2Q stack. The steps vary from device to device. Follow the instructions - specific to your device in \l {Preparing Hardware}. - - \section1 5. Setting up USB Access to Embedded Devices - - \e{If you target only the emulator, you can skip this step.} - - \include b2qt-post-install-setup.qdocinc setting up usb access - - \section1 6. Configuring a Device Kit in Qt Creator - - \include b2qt-post-install-setup.qdocinc configuring device kit android linux - - You are now ready to start developing for your device. - For more information, see \l{Building and Running an Example}. -*/ - -/*! - \page qtee-preparing-hardware.html - \title Preparing Hardware - \previouspage qtee-supported-platforms.html - \nextpage qtee-building-and-running.html - - Before you can deploy and test your Qt application on hardware, you must - flash the target device with an image that contains the - \B2Q stack. These steps vary from device to device: - - \list - \li \l{Nexus 7 (2012/2013) (embedded Android)} - \li \l{BD-SL-i.MX6 (embedded Android and Linux)} - \li \l{SABRE SD i.MX6Quad (embedded Linux)} - \li \l{Toradex Apalis iMX6 (embedded Linux)} - \li \l{BeagleBone Black (embedded Android and Linux)} - \li \l{BeagleBoard-xM (embedded Linux)} - \li \l{Raspberry Pi Model B (embedded Linux)} - \endlist - - If you use only the emulator, you can skip this step - and continue straight to \l {Building and Running an Example}. -*/ - -/*! - \target Nexus 7 (2012/2013) (embedded Android) - \page qtee-preparing-hardware-nexus-7.html - \title Preparing Nexus 7 (2012/2013) - \previouspage qtee-installation-guide.html - \nextpage qtee-building-and-running.html - - Take the following steps to prepare a - \l{http://www.google.com/nexus/7/specs/}{Nexus 7 (2012/2013)} for - \B2Q. - - \note The installation process will wipe the device. Make sure to - backup any personal data. The device can later be restored to - factory state, see \l{nexus-factory-reset}{Troubleshooting}. - - The Nexus 7 must have the same Android main version (e.g. \c{4.2} - or \c{4.4}) as the generic \B2Q eAndroid stack that is to be - installed. If needed, you can update the Android version either by - using Android's upgrading tool, or by flashing a factory image of - the right version. See \l{nexus-factory-reset}{Troubleshooting}. - - \section1 Enabling Developer Mode - - In order to install the \B2Q stack into the Nexus 7, you need to - enable developer mode and USB debugging. This is only needed for - the first time install. - - \note If for some reason the device does not boot up normally, it - is also possible to install to a Nexus 7 started up in - \c{fastboot} (bootloader) mode (see - \l{nexus-factory-reset}{Troubleshooting}). Just skip this section - and add the \c{-fastboot} argument to the \c{deploy.sh} command - below. - - \list 1 - \li Power up the device. - \li Open the \b{Settings} app and select the \b{About tablet} item. - \li Press the \b{Build number} item seven times, until the message "You are now a developer!" appears. - - \li Back in the \b{Settings} menu, select \b{Developer options}. - \li Press the \b{USB debugging} item and confirm that you allow USB debugging. - \endlist - - You should now be able to establish USB connection to the device as follows. - - \section1 Setting up USB Access - - \include b2qt-post-install-setup.qdocinc setting up usb access - - \section1 Deploying the \B2Q Stack - - Depending on the edition of your Nexus 7 device, use one of the - commands below to install the \B2Q stack. Replace \c{X.Y} with the - device's Android version number, for example \c{4.2} or \c{4.4}. - - \note The deploy script will check that the connected Nexus device - is of the expected type and Android version, and abort the - installation if it is not. - - \list - \li \b{Nexus 7 (2013):} - \badcode - cd - ./Boot2Qt-3.x/generic-X.Y-eAndroid/images/nexus7v2/deploy.sh - \endcode - \li \b{Nexus 7 (2012):} - \badcode - cd - ./Boot2Qt-3.x/generic-X.Y-eAndroid/images/nexus7/deploy.sh - \endcode - \endlist - - During the installation, the device may ask for confirmation to be - unlocked. Press the power button once to confirm. - - The device will reboot during the process. Do not interact with it - or unplug it until the process is fully completed. - - \section1 Configuring a Device Kit in Qt Creator - - \include b2qt-post-install-setup.qdocinc configuring device kit android - - You are now ready to start developing for your device. For more information, - see \l{Building and Running an Example}. -*/ - -/*! - \target BeagleBoard-xM (embedded Linux) - \page qtee-preparing-hardware-beagleboard.html - \title Preparing BeagleBoard-xM - \previouspage qtee-installation-guide.html - \nextpage qtee-building-and-running.html - - Take the following steps to prepare a \l{http://beagleboard.org/hardware-xM} - {BeagleBoard-xM} for - \B2Q. - - \note BeagleBoard-xM is no longer supported in \SDK 3.0. It is still, - however, supported and tested under the previous 2.x versions. - - The image containing \B2Q stack for BeagleBoard-xM are included in \SDK, - ready to be copied to an SD card. - - \section1 Preparing an SD Card - - An SD card of at least 512 MB capacity is needed. - - \include detect-sd-card-device-name.qdocinc instructions - - \section1 Installing the \B2Q Image - - To write the image to the SD card, ensure that no partitions on the - SD card are mounted: - - \include detect-sd-card-device-name.qdocinc unmount - - Then, - - \badcode - cd - sudo Boot2Qt-3.x/beagleboard-eLinux/images/deploy.sh /dev/ - \endcode - - After the image has been deployed, power on the device and check that - the \B2Q welcome screen and/or demo appear. - - \section1 Setting up USB Access - - \include b2qt-post-install-setup.qdocinc setting up usb access - - \section1 Configuring a Device Kit in Qt Creator - - \include b2qt-post-install-setup.qdocinc configuring device kit - - You are now ready to start developing for your device. For more information, - see \l{Building and Running an Example}. -*/ - -/*! - \target BD-SL-i.MX6 (embedded Android and Linux) - \page qtee-preparing-hardware-imx6.html - \title Preparing BD-SL-i.MX6 - \previouspage qtee-installation-guide.html - - Take the following steps to prepare a - \l{http://boundarydevices.com/products/sabre-lite-imx6-sbc/} - {Boundary Devices BD-SL-i.MX6} (SABRE Lite) for \B2Q. - - \note It is important that you repeat the steps in this section after you - update \SDK. - - The images containing the \B2Q stack for BD-SL-i.MX6 are included - in \SDK, ready to be copied to an SD card. - - \section1 Preparing an SD Card - - For \B2QA, an SD card of at least 4 GB capacity is needed. For \B2QL, - a card of at least 512 MB capacity is sufficient. - - \include detect-sd-card-device-name.qdocinc instructions - - \section1 Installing the Android image - - \e{If installing} \B2QL, \e{you can skip this step and proceed to} - \l{Installing the Boot to Qt Image}. - - Download the package \e{imx6-jb-20130628.tar.gz} from - \l{http://boundarydevices.com/android-jellybean-on-i-mx6-with-no-disclaimers/}{Boundary - Devices Android Jellybean i.MX6 images} (registration required). - - Use the following commands to create an SD card containing the - downloaded image: - - \list 1 - \li Extract the downloaded package: - \badcode - ~/$ mkdir bd-android - ~/$ cd bd-android - ~/bd-android$ tar zxvf ~/Downloads/imx6-jb-20130628.tar.gz - \endcode - \li Run device/boundary/mksdcard.sh: - \badcode - ~/bd-android$ sudo device/boundary/mksdcard.sh /dev/ - ~/bd-android$ sync - \endcode - \endlist - - \section1 Installing the \B2Q Image - - Make sure you have the required tools installed in your development machine: - - \badcode - sudo apt-get install u-boot-tools - \endcode - - Then, upgrade the SD card with \B2Q. First, ensure that no partitions on the - SD card are mounted: - - \include detect-sd-card-device-name.qdocinc unmount - - Then, use one of the commands below, depending on whether you are developing - for embedded Android or Linux: - - \list - \li \b{\B2QA} - \badcode - cd - ./Boot2Qt-3.x/generic-4.2-eAndroid/images/iMX6/deploy.sh /dev/ - \endcode - \li \b{\B2QL} - \badcode - cd - sudo ./Boot2Qt-3.x/iMX6-eLinux/images/deploy.sh /dev/ - \endcode - \endlist - - After the installation is complete, insert the SD card, power on the device and check that - the \B2Q welcome screen and/or demo appear. - - \section1 Setting up USB Access - - \include b2qt-post-install-setup.qdocinc setting up usb access - - \section1 Configuring a Device Kit in Qt Creator - - \include b2qt-post-install-setup.qdocinc configuring device kit android linux - - You are now ready to start developing for your device. For more information, - see \l{Building and Running an Example}. -*/ - -/*! - \target SABRE SD i.MX6Quad (embedded Linux) - \page qtee-preparing-hardware-imx6sabresd.html - \title Preparing SABRE SD i.MX6Quad - \previouspage qtee-installation-guide.html - - Take the following steps to prepare a - \l{http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=RDIMX6SABREBRD} - {Freescale SABRE SD i.MX6Quad} for \B2Q. - - \note It is important that you repeat the steps in this section after you - update \SDK. - - The images containing the \B2Q stack for SABRE SD i.MX6Quad are included - in \SDK, ready to be copied to an SD card. - - \section1 Preparing an SD Card - - An SD card of at least 512 MB capacity is sufficient. - - \include detect-sd-card-device-name.qdocinc instructions - - \section1 Installing the \B2Q Image - - To write the image to the SD card, ensure that no partitions on the - SD card are mounted: - - \include detect-sd-card-device-name.qdocinc unmount - - Then, - - \badcode - cd - sudo Boot2Qt-3.x/imx6qsabresd-eLinux/images/deploy.sh /dev/ - \endcode - - After the image has been deployed, insert the SD card, power on the device and check that - the \B2Q welcome screen and/or demo appear. - - \section1 Setting up USB Access - - \include b2qt-post-install-setup.qdocinc setting up usb access - - \section1 Configuring a Device Kit in Qt Creator - - \include b2qt-post-install-setup.qdocinc configuring device kit - - You are now ready to start developing for your device. For more information, - see \l{Building and Running an Example}. -*/ - -/*! - \target Toradex Apalis iMX6 (embedded Linux) - \page qtee-preparing-hardware-apalis-imx6.html - \title Preparing Toradex Apalis iMX6 - \previouspage qtee-installation-guide.html - - Take the following steps to prepare a - \l{http://www.toradex.com/products/apalis-arm-computer-modules/freescale-imx-6-computer-module} - {Toradex Apalis iMX6} for \B2Q. - - \note It is important that you repeat the steps in this section after you - update \SDK. - - The images containing the \B2Q stack for Toradex Apalis iMX6 are included - in \SDK, ready to be copied to an SD card. - - \section1 Preparing an SD Card - - An SD card of at least 512 MB capacity is sufficient. - - \include detect-sd-card-device-name.qdocinc instructions - - \section1 Installing the \B2Q Image - - To write the image to the SD card, ensure that no partitions on the - SD card are mounted: - - \include detect-sd-card-device-name.qdocinc unmount - - Then, - - \badcode - cd - sudo Boot2Qt-3.x/apalis-imx6-eLinux/images/deploy.sh /dev/ - \endcode - - By default, the Toradex Apalis iMX6 boots from its internal eMMC. In order to boot from - the external SD card, the U-Boot environment needs to be updated. Connect a serial cable - to the device and enter into the U-Boot environment by pressing any key before the autoboot. - Enter following lines into U-Boot: - - \badcode - setenv bootcmd 'run sdboot ; echo sdboot failed ; run emmcboot ; echo ; echo emmcboot failed ; run nfsboot ; echo ; echo nfsboot failed ; usb start ;setenv stdout serial,vga ; setenv stdin serial,usbkbd' - setenv sdboot 'run setup; setenv bootargs ${defargs} ${sdargs} ${setupargs} ${vidargs};echo Booting from SD card in 4bit slot...; fatload mmc 2:1 10800000 uImage && bootm 10800000' - setenv sdargs 'ip=off root=/dev/mmcblk1p2 rw,noatime rootfstype=ext3 rootwait' - saveenv - \endcode - - New U-Boot command are now stored into the device, and you can start \B2Q. For more information - about the boot process on Toredex Apalis iMX6, see - \l{http://developer.toradex.com/software-resources/arm-family/linux/linux-booting}{Toradex Linux Booting} - - After the image has been deployed, insert the SD card, power on the device and check that - the \B2Q welcome screen and/or demo appear. - - \section1 Configuring a Device Kit in Qt Creator - - \include b2qt-post-install-setup.qdocinc configuring network device - - You are now ready to start developing for your device. For more information, - see \l{Building and Running an Example}. -*/ - -/*! - \target Raspberry Pi Model B (embedded Linux) - \page qtee-preparing-hardware-rasberrypi.html - \title Preparing Raspberry Pi - \previouspage qtee-installation-guide.html - \nextpage qtee-building-and-running.html - - Take the following steps to prepare a \l{http://www.raspberrypi.org/} - {Raspberry Pi} for - \B2Q. - - \note Ethernet networking is required to connect the device to Qt Creator. - This means that the support is currently limited to Raspberry Pi Model B, which - includes an Ethernet port. - - \note It is important that you repeat the steps in this section after you - update \SDK. - - The image containing \B2Q stack for Raspberry Pi is included in the SDK, - ready to be copied to an SD card. - - \section1 Preparing an SD Card - - An SD card of at least 512 MB capacity is sufficient. - - \include detect-sd-card-device-name.qdocinc instructions - - \section1 Installing the \B2Q Image - - To write the image to the SD card, ensure that no partitions on the - SD card are mounted: - - \include detect-sd-card-device-name.qdocinc unmount - - Then, - - \badcode - cd - sudo Boot2Qt-3.x/raspberrypi-eLinux/images/deploy.sh /dev/ - \endcode - - After the image has been deployed, insert the SD card, power on the device and check that - the \B2Q welcome screen and/or demo appear. - - \section1 Configuring a Device Kit in Qt Creator - - \include b2qt-post-install-setup.qdocinc configuring network device - - You are now ready to start developing for your device. For more information, - see \l{Building and Running an Example}. -*/ - -/*! - \target BeagleBone Black (embedded Android and Linux) - \page qtee-preparing-hardware-beaglebone.html - \title Preparing BeagleBone Black - \previouspage qtee-installation-guide.html - - Take the following steps to prepare a - \l{http://beagleboard.org/products/beaglebone%20black}{BeagleBone Black} for \B2Q. - - \note It is important that you repeat the steps in this section after you - update \SDK. - - The images containing the \B2Q stack for BeagleBone Black are included - in \SDK, ready to be copied to an SD card. - - \section1 Preparing an SD Card - - For \B2QA, an SD card of at least 2 GB capacity is needed. For \B2QL, - a card of at least 512 MB capacity is sufficient. - - \include detect-sd-card-device-name.qdocinc instructions - - \section1 Installing the Android image - - \e{If installing} \B2QL, \e{you can skip this step and proceed to} - \l{Installing the Boot to Qt Image}. - - Download the package \e{TI_Android_JB_4.2.2_DevKit_4.1.1_beagleboneblack.tar.gz} from - \l{http://downloads.ti.com/sitara_android/esd/TI_Android_DevKit/TI_Android_JB_4_2_2_DevKit_4_1_1/index_FDS.html} - {Texas Instruments} (search for \e {BeagleBone Black} in the list of download packages). - - Use the following commands to create an SD card containing the - downloaded image: - - \list 1 - \li Extract the downloaded package: - \badcode - ~$ tar zxvf ~/Downloads/TI_Android_JB_4.2.2_DevKit_4.1.1_beagleboneblack.tar.gz - \endcode - \li Run beagleboneblack/mkmmc-android.sh: - \badcode - ~$ cd beagleboneblack - ~/beagleboneblack$ sudo ./mkmmc-android.sh /dev/ - \endcode - \endlist - - \section1 Installing the \B2Q Image - - Then, upgrade the SD card with \B2Q. First, ensure that no partitions on the - SD card are mounted: - - \include detect-sd-card-device-name.qdocinc unmount - - Then, use one of the commands below, depending on whether you are developing - for embedded Android or Linux: - - \list - \li \b{\B2QA} - \badcode - cd - ./Boot2Qt-3.x/generic-4.2-eAndroid/images/beaglebone/deploy.sh - \endcode - \li \b{\B2QL} - \badcode - cd - sudo ./Boot2Qt-3.x/beaglebone-eLinux/images/deploy.sh /dev/ - \endcode - \endlist - - After the installation is complete, insert the SD card, power on the device and check that - the \B2Q welcome screen and/or demo appear. - - \section1 Setting up USB Access - - \include b2qt-post-install-setup.qdocinc setting up usb access - - \section1 Configuring a Device Kit in Qt Creator - - \include b2qt-post-install-setup.qdocinc configuring device kit android linux - - You are now ready to start developing for your device. For more information, - see \l{Building and Running an Example}. -*/ - -/*! - \target i.MX53 Quick Start Board (embedded Linux) - \page qtee-preparing-hardware-imx53qsb.html - \title Preparing i.MX53 Quick Start Board - \previouspage qtee-installation-guide.html - \nextpage qtee-building-and-running.html - - Take the following steps to prepare a - \l{http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=IMX53QSB} {i.MX53 Quick Start Board} - for \B2Q. - - \note Ethernet networking is required to connect the device to Qt Creator. - - \note It is important that you repeat the steps in this section after you - update \SDK. - - As i.MX53 Quick Start Board is not a \SDK reference board, there is no ready-made - image containing a \B2Q stack available. Instead, you must build it yourself using - the Yocto recipes and build scripts from the \B2Q source packages. - For more information, see \l{Building Your Own Embedded Linux Image}. - - \section1 Preparing an SD Card - - An SD card of at least 512 MB capacity is sufficient. - - \include detect-sd-card-device-name.qdocinc instructions - - \section1 Installing the \B2Q Image - - To write the image to the SD card, ensure that no partitions on the - SD card are mounted: - - \include detect-sd-card-device-name.qdocinc unmount - - Then, - - \badcode - cd - sudo deploy.sh /dev/ - \endcode - - After the image has been deployed, insert the SD card, power on the device and check that - the \B2Q welcome screen and/or demo appear. - - \section1 Configuring a Device Kit in Qt Creator - - \include b2qt-post-install-setup.qdocinc configuring network device - - You are now ready to start developing for your device. For more information, - see \l{Building and Running an Example}. -*/ - -/*! - \page qtee-building-and-running.html - \title Building and Running Embedded Applications - \previouspage qtee-preparing-hardware.html - \nextpage qtee-custom-build-steps.html - - \section1 Building and Running an Example - - After you complete the installation and configuration steps for \SDK and the - target devices, you can test the setup by creating a simple \l{Qt Quick} - application and running it on the device: - - \list 1 - \li Make sure that your device is powered on and connected to the - development host. - \li In Qt Creator, select \b File > \b {New File or Project} > - \b Applications > \b{Qt Quick Application} > \b{Choose}. - \li Choose a location for your new project. - \li In the \b{Qt Quick Component Set} dialog, select \b{Qt Quick 2.2} - or \b{Qt Quick 2.2 Boot2Qt}. - \li In the \b{Kit Selection} dialog, select the kits for your - devices. You can also select the emulator kit to test running the - project in the emulator. - \li Click \b{Next} and finish the wizard. - \li In \b Projects > \b {Build & Run}, select the correct kit for your - connected device. - \li To build and run the project, click \inlineimage qtcreator-run.png - \endlist - - \section1 Building and Running \B2Q Demos - - You can find the \B2Q demo applications in Qt Creator. - - \list 1 - \li Go to \b Welcome > \b Examples. - \li Select a \e Boot2Qt Qt version from the drop-down list. - \li Select a demo you want to build. - \li In \b Projects > \b {Build & Run}, select the correct kit for your - connected device or emulator. - \li To build and run the project, click \inlineimage qtcreator-run.png - \endlist - - \section1 Setting Up an Already Existing Project for Deployment - - New Qt Quick application projects generated by Qt Creator always have the correct - settings for deployment on the device or emulator. However, other projects need - some changes. This includes projects created using the - \b File > \b {New File or Project} > \b Applications > \b{Qt Widget Application} - template. - - As a general rule, application binaries and resources are deployed to the - \c {/data/user/qt/} directory. Therefore, the \c path variable for - the \c INSTALLS targets needs to be adjusted accordingly in .pro files. - - Open the .pro file and define the \c target.path and \c INSTALLS variables as follows: - - \badcode - target.path = /data/user/qt/$$TARGET - INSTALLS += target - \endcode - - Above, \c {$$TARGET} expands to the application target (executable) name. - - \section2 Deploying Application Resources - - If the application depends on additional resources (such as QML files and - images), you need to deploy them as well. For example: - - \badcode - appFiles.files = *.png qml - appFiles.path = /data/user/qt/$$TARGET - INSTALLS += appFiles - \endcode - - Above, all PNG images from the application source directory, and the entire - \e qml subdirectory are included in the deployment. - - Alternatively, the files used by the application can be stored into the application - executable using the \l{The Qt Resource System}{Qt resource system}. This way, simply - deploying the application binary is all that's required. -*/ - -/*! - \page qtee-custom-build-steps.html - \title Special Build & Run Options - \previouspage qtee-building-and-running.html - \nextpage qtee-customization.html - - Qt Creator allows you to execute custom commands on the embedded device connected - to the development host, both during the build process and during deployment of your - application. - - \section1 Custom Build Steps - - To add a custom step to be executed during the build: - - \list 1 - \li In Qt Creator, go to \b Projects > \b {Build Settings} - \li Select \b Build configuration for the \e {\B2Q} version you want to customize. - \li Click \b {Add Build Step} and select \b {Custom Remote Command (via adb shell)}. - \li Enter the command to be executed. - \endlist - - \section1 Custom Deployment Steps - - To add a custom step to be executed during deployment: - - \list 1 - \li In Qt Creator, go to \b Projects > \b {Run Settings} - \li Select \b Run configuration for the \e {\B2Q} version you want to customize. - \li Click \b {Add Deploy Step} and select \b {Custom Remote Command (via adb shell)}. - \li Enter the command to be executed. - \endlist - - \sa {Booting to a Custom Application} -*/ - -/*! - \page qtee-customization.html - \title Customization - \previouspage qtee-building-and-running.html - \nextpage qtee-custom-embedded-linux-image.html - - \section1 Environment and Input - - By default, the basic environment variables and startup options of - \B2Q applications are set in the file \c - {/system/bin/appcontroller.conf} in embedded Android devices and - in \c{/etc/appcontroller.conf} in embedded Linux devices. - - You can customize this file if you target a hardware device that - has other input devices than the ones that the \B2Q stack is configured - for by default. - - On some devices, the root file system (where this file - resides) is mounted read-only at boot time. To allow modification, - remount it read-write by entering the following command: - \badcode - /Tools/b2qt/adb remount - \endcode - - In the \c{appcontroller.conf} file, the input devices are - specified by the lines similar to these: - \badcode - env=QT_QPA_EVDEV_TOUCHSCREEN_PARAMETERS=/dev/input/event0 - \endcode - - Usually, you do not need to change this setting. USB input devices, such as - keyboards and mice, are automatically recognized. The mouse pointer is shown - automatically if a mouse is connected. - - However, hotplugging may not work, which means that the input - devices, such as a keyboard and mouse, have to be connected at boot - time. - - On some devices, for example the BD-SL-i.MX6, the touchscreen device is - specified explicitly with \c QT_QPA_EVDEV_TOUCHSCREEN_PARAMETERS. This is - necessary because the automatic device discovery would fail to find the - touchscreen. - - \section1 Booting to a Custom Application - - After you have deployed your own application to the device, it will be - launched on boot, instead of the \B2Q demo launcher. To prevent this - behavior, remove or disable the \b {Make this application the default one} - step from the \b{Run Settings} for your project in the Qt Creator \b Projects - mode. - - To remove your application from the default startup, use the following - command: - \badcode - /Tools/b2qt/adb shell appcontroller --remove-default - \endcode - - \section1 Switching Between Portrait and Landscape Views - - Depending on device screen dimensions and application requirements, it might - be desirable - to change the default view orientation. The following example shows how to rotate your - application in QML. - - \qml - import QtQuick 2.2 - - Item { - id: root - width: 800 - height: 1280 - // Container element for rotating - Rectangle { - id: main - // Swap the width and height of the root item - width: root.height - height: root.width - anchors.centerIn: parent - // Rotate 90 degrees clockwise around transformOrigin - rotation: 90 - // The rotated content - Text { - text: qsTr("Hello World") - anchors.centerIn: parent - } - MouseArea { - anchors.fill: parent - onClicked: { - Qt.quit(); - } - } - } - } - \endqml - - \section1 Disabling Screen Composer on Embedded Android - - By default, the \B2Q stack uses Android's screen composer, \e - Surfaceflinger. It is required for Qt Multimedia functionality, - i.e. video playback and camera. If that functionality is not - required, Surfaceflinger may be disabled. This can in some - situations improve performance. - - \list 1 - \li Edit \c {/system/bin/appcontroller.conf} to set the value of - the environment variable \c QT_QPA_EGLFS_NO_SURFACEFLINGER to \c - 1 instead of \c 0. - \li Disable the startup of \c surfaceflinger at boot-up. Either - change \c /init.rc, or simply rename the \c - {/system/bin/surfaceflinger} executable. - \endlist - - \section1 Using Network Connection for ADB - - By default, \B2Q uses USB cable for communication between device and Qt Creator. - On \B2QL, you can change the device to use ethernet network connection for the - communication. To enable network connection, you need to modify file - \c /etc/default/adbd located on the devices, and change value of \c USE_ETHERNET - to \c 'yes'. This can also be done with \c adb, while the device is still - connected via USB. - - \badcode - /Tools/b2qt/adb shell sed -i -e 's/USE_ETHERNET=no/USE_ETHERNET=yes/' /etc/default/adbd - \endcode - - \note You need to restart the device for this change to take effect. - - \include b2qt-post-install-setup.qdocinc configuring network device -*/ - -/*! - \page qtee-custom-embedded-linux-image.html - \title Building Your Own Embedded Linux Image - \previouspage qtee-customization.html - \nextpage qtee-changelog.html - - \B2QL is built using the tools and resources from the \l {Yocto Project}, - and is based on Yocto's reference distribution (\e Poky). You can - use the same tools to build custom \B2Q images, and have control over - which packages are included in the build and how the software stack - is configured. - - \section2 Note About Support Services for Yocto Tools - - By default, Digia will only provide customer support for the Yocto - recipes on the reference platforms, as delivered with \SDK, and - setting up the development environment for them. Receiving support - for any other configuration requires a separate service agreement - between a customer and Digia. - - \section1 Requirements - - You should be familiar with the Yocto tools and the concept of - \e {recipes}. For more information, see Yocto Project - \l{https://www.yoctoproject.org/documentation/current}{documentation}. - - To get started, you need the following: - - \list - \li Install the \B2Q \e source packages. You can - find these by running the \e MaintenanceTool application - located in the \SDK installation directory and selecting - \e {Package Manager}. The \e {Yocto meta layer} package - contains the additional recipes required to make the image - compatible with \B2Q. - \li Install the dependencies for the Yocto tools. In Ubuntu, - the following packages are required: - \badcode - sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath libsdl1.2-dev xterm - \endcode - \endlist - - \section1 Setting Up Yocto Build Environment - - Run the setup script that initializes the Yocto environment: - - \badcode - cd - /Boot2Qt-3.x/sources/b2qt-yocto-meta/b2qt-init-build-env . - \endcode - - \section1 Building the Image and Toolchain - - After the Yocto environment is set up, you need to configure the - build environment for your target device. Using Raspberry Pi as - an example: - - \badcode - export TEMPLATECONF=meta-b2qt/conf - export MACHINE=raspberrypi - source poky/oe-init-build-env build-raspberrypi - \endcode - - The following table lists the \c MACHINE values for our reference platforms: - - \table - \header - \li Board - \li MACHINE value - \row - \li Raspberry Pi - \li raspberrypi - \row - \li BeagleBone Black - \li beaglebone - \row - \li Boundary Devices BD-SL-i.MX6 - \li nitrogen6x - \row - \li Freescale SABRE SD i.MX6Quad - \li imx6qsabresd - \row - \li Toradex Apalis iMX6 - \li apalis-imx6 - \row - \li Emulator - \li emulator - \endtable - - Yocto recipes for \B2QL have two main targets to build: The target image, - and the external toolchain that is used for building the Qt framework and - applications. - - \badcode - bitbake b2qt-embedded-image - bitbake meta-toolchain-b2qt-embedded-sdk - \endcode - - The target rootfs image is located in the \c /tmp/deploy/images//b2qt-embedded-image-.tar.gz, - and the new toolchain is in \c /tmp/deploy/sdk/b2qt-eglibc-x86_64-meta-toolchain-b2qt-embedded-sdk--toolchain-1.6.sh - - \note The generated target image does not yet include Qt libraries, - you need to build Qt and add it into the image yourself. - - \section1 Building Qt and Addons - - \e {Build scripts} source package contains scripts that can be used to - build Qt and all additional Qt addons that are part of \B2QL image. - To setup build environment for your target hardware, run the initialization - script. Using Raspberry Pi as an example: - - \badcode - /Boot2Qt-3.x/sources/b2qt-build-scripts/embedded-common/init_build_env.sh /Boot2Qt-3.x/sources/b2qt-build-scripts/embedded-linux/config.raspberrypi - \endcode - - \note You can use the same build directory for Qt and the Yocto image. - The toolchain and the target image are then used from the Yocto build directory. - - You can use following scripts to build different parts of the \B2Q stack. - - \badcode - /Boot2Qt-3.x/sources/b2qt-build-scripts/embedded-linux/build_qt.sh - /Boot2Qt-3.x/sources/b2qt-build-scripts/embedded-linux/build_extras.sh - /Boot2Qt-3.x/sources/b2qt-build-scripts/embedded-linux/build_image.sh - \endcode - - After \e {embedded-linux/build_image.sh} has finished, you can flash the device with - the updated image located in the build folder. - - \section1 Configuring Qt Creator - - After you have built the \B2Q stack, you must also set up Qt Creator in order to start - developing for your device. The following script does this for you. - - \badcode - /Boot2Qt-3.x/sources/b2qt-build-scripts/embedded-common/setup_qtcreator.sh - \endcode - - This will set up a new kit in Qt Creator, using the toolchain and Qt from - your build directory. The new kit is visible under \b Tools > \b Options - > \b {Build & Run} > \b Kits. -*/ - -/*! - \page qtee-supported-platforms.html - \title Supported Platforms - \previouspage qtee-installation-guide.html - \nextpage qtee-preparing-hardware.html - - \section1 Supported Reference Devices - - The \B2Q stack can be made to run on a variety of hardware. For \SDK license - holders, tooling is provided to customize the contents of the stack as well - as to take it into desired production hardware. For more information on how - to customize the stack for embedded Linux, see - \l {Building Your Own Embedded Linux Image}. - - Approximate minimal hardware requirements for running \B2Q are: - \list - \li 256 MB of RAM - \li 500 MHz CPU, 1 GHz preferred for 60-FPS velvet-smooth UI - \li OpenGL ES 2.0 support - \endlist - - \B2QA requires hardware that has support for the Android operating - system, version 4.2 or later. - - \B2Q software stack is provided pre-built, tested and supported for the - following hardware: - \list - \li \l{http://www.google.com/nexus/7/specs/} - {Google/Asus Nexus 7 (2012 and 2013 models)} - \li \l{http://beagleboard.org/products/beaglebone%20black} - {BeagleBone Black} - \li \l{http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=RDIMX6SABREBRD} - {Freescale SABRE SD i.MX6Quad} - \li \l{http://boundarydevices.com/products/sabre-lite-imx6-sbc/} - {BD-SL-i.MX6} - \li \l{http://www.toradex.com/products/apalis-arm-computer-modules/freescale-imx-6-computer-module} - {Toradex Apalis iMX6} - \li \l{http://www.raspberrypi.org/faqs} - {Raspberry Pi Model B} - \endlist - - \section2 Legacy Reference Devices - - The following devices are no longer tested or supported by the latest - release of \SDK. - - \list - \li \l{http://beagleboard.org/hardware-xM} - {BeagleBoard-xM} - \list - \li Starting from \SDK 3.0 release, BeagleBoard-xM is no longer - tested and supported. It is, however, still tested and supported - in the earlier 2.x releases. - \endlist - \endlist - - \section1 Supported Development Environment - - The development environment supported by \SDK is Ubuntu Linux 64-bit (12.04 LTS or later). - - \sa {Requirements for Development Host} - -*/ - -/*! - \page qtee-licenses.html - \title License Information - \previouspage qtee-troubleshooting.html - \nextpage qtee-qml-reference.html - - \section1 Licensing - - \SDK is licensed under the Qt Enterprise commercial license. For more information, - see \l {http://qt.digia.com/licensing}. Evaluation licenses are also available, - see \l {product page}{\SDK} on qt.digia.com. - - \section1 3rd Party Software Licenses - - The third-party licenses used in \SDK are listed in the file - \c {/Licenses/ThirdPartySoftware_Listing.txt}. - - \section1 Embedded Android Images - - The embedded Android platform is built from the \e {Android Open Source Project}, - source code available at \l {http://android.googlesource.com/}. The open - source licenses and notices are collected into the file - \c {/etc/NOTICE.html.gz} in the target images. - - \section1 Embedded Linux Images - - The embedded Linux platform is built using tools from the \l {Yocto Project}. - The open source licenses and notices are located in - \list - \li \c /usr/share/common-licenses/license.manifest - \li \c /usr/share/licenses/* - \endlist - - \section1 Android GNU C++ Run-time Licensing - - The Android platform does not provide a full implementation of the C++ run-time. Instead, - apps that depend on features such as STL, exceptions, or RTTI, must include an additional - native run-time library that provides the features they need. - - \B2QA uses the GNU libstdc++ library distributed as part of the \e {Android Open Source Project}. - This library is included in the images for \B2QA, and will be loaded by the application - on start-up to meet the run-time requirements of Qt. - - The GNU C++ run-time is licensed under the - \l{http://gcc.gnu.org/onlinedocs/libstdc++/manual/appendix_gpl.html}{GNU General Public License version 3} with - an exception which grants permission for run-time linking and usage of the library by an application which - would otherwise violate the terms of the main license. For more information about this exception, see - \l{http://gcc.gnu.org/onlinedocs/libstdc++/manual/license.html}{the official license page}. -*/ - -/*! - \page qtee-changelog.html - \title ChangeLog - \previouspage qtee-customization.html - \nextpage qtee-troubleshooting.html - - \section1 \B2Q 3.1.1 - - \list - \li Release date: Aug 20, 2014 - \endlist - - \section2 Changes - \b {Fixed Bugs}: - \list - \li \l {Building Your Own Embedded Linux Image}: - fixed issues that caused the Yocto build process to fail. - \endlist - - \section1 \B2Q 3.1.0 - - \list - \li Release date: July 3, 2014 - \endlist - - \section2 Changes - \b {New Features}: - \list - \li Boot to Qt stack was updated to use Qt 5.3.1 on embedded Android - and Linux. - \li Added a generic solution for injecting \B2QA stack into devices - running Android version 4.2.2 or later. - \li \l {Preparing Toradex Apalis iMX6}{Toradex Apalis iMX6} was added - as a reference device. - \li \l {Qt Data Visualization} was updated to version 1.1. - \li \l {Qt Charts} was updated to version 1.4. - \li \l {Qt Virtual Keyboard} was update to version 1.1. - \endlist - - \b {Improvements}: - \list - \li Added translucent widget windows support to eglfs. - \li Changed \e appcontroller to print status messages to stdout. - \li Switched to use symbolic links for GL-streaming library, instead - of having multiple copies. - \li Fixed C++ debugging issues and improved performance on embedded - Android. - \li Updated the content of \e About \e {\SDK} demo. - \li Improved Sensors and Media Player examples. - \endlist - - \b {Fixed Bugs}: - \list - \li Fixed WiFi not working on Nexus 7 (2013). - \li BeagleBone Black: Fixed C++ debugging failing on embedded Android. - \li BeagleBone Black: embedded Linux did not include USB serial drivers. - \li Fixed JavaScript crash on ARM (QTBUG-39289). - \li Removed useless warnings about setMask when using Qt Widgets. - \endlist - - \section1 \B2Q 3.0.0 - - \list - \li Release date: May 22, 2014 - \endlist - - \section2 Changes - \b {New Features}: - \list - \li \B2Q stack was updated to use Qt 5.3 on embedded Android and Linux - \li \l {Qt Virtual Keyboard} was updated to version 1.0 - \li \l {Qt Data Visualization} demo was added - \li Qt WebEngine 0.9 support (including WebEngine demo) was added for - embedded Android and Linux. However, the Emulator target is - currently not supported - \li \l {Qt Quick Compiler} (Technology Preview) was added to the \B2Q stack - \li \l{Preparing Nexus 7 (2012/2013)}{Nexus 7 (2013)} was added as a - reference device for embedded Android - \li \l{Preparing SABRE SD i.MX6Quad}{Freescale SABRE SD i.MX6Quad} was - added as a reference device for embedded Linux - \li WiFi networking support and configuration were implemented on - embedded Linux - \endlist - - \b {Improvements}: - \list - \li Emulator warnings were improved - \li Embedded Linux: Moved to use Yocto 1.6 (Daisy) - \li Debug symbols were moved to a separately installable package - \li Presentation of \B2Q demos in Qt Creator was improved - \endlist - - \b {Fixed Bugs}: - \list - \li Build scripts: Incorrect path was fixed - \endlist - -\section1 \B2Q 2.1.0 - - \list - \li Release date: Apr. 15, 2014 - \endlist - - \section2 Changes - \b {New Features}: - \list - \li \l {Qt Data Visualization} version 1.0 was added to the \B2Q stack - \li \l {Enginio Data Storage} version 1.0 was added to the \B2Q stack - \li \l {Qt Quick Enterprise Controls} was updated to version 1.1 - \li \l {Qt Serial Port} support was added to the \B2Q stack - \li Bluetooth on \B2QL: Support for bluez was added - \li Added support for building \B2QL for i.MX53 from sources - \endlist - - \b {Improvements}: - \list - \li Qt Creator plugin for \B2Q now supports incremental deployment, custom adb commands - \li Adb now easily usable over IP on all devices on \B2QL - \li Update new content to device without erasing it first on \B2QL - \li All images now contain generally used CA certificates - \li Toolchains updated to support Qt WebEngine - \li Documentation was added for QML types provided by the \l {WiFi Module} - \li Emulator: Debug logging functionality was added - \li Various documentation improvements - \li \SDK installer error handling was improved - \li 3rd party license information was updated - \li Launcher Settings application UI was improved - \endlist - - \b {Fixed Bugs}: - \list - \li \B2QL: OpenSSL Heartbleed bug was fixed - \li \B2QA: Qt debug symbols were missing - \li QEglFSCompositor::render() using incorrect vertices for full-screen quad, resulting in bad texture sampling - \li Use damaged rect instead of full texture upload for raster windows - \li Emulator: Crash when launching multiple instances - \li Emulator: State transitions were not working properly - \li \B2QA emulator: C++ debugging was fixed - \li Emulators: Qt Quick applications don't exit on Qt.quit() - \li Banding was visible on Raspberry Pi - \li Qt Creator: adb failed to connect - \li QtCreator: Different Virtual Machiness with the same OS were not handled properly - \li Qt Creator: Tabstop order in device wizard was incorrect - \li Qt 5 Everywhere demo: not all internet radio station were working - \endlist - - \b {Fixed Known Issues}: - \list - \li Embedded Android: Arabic Numbers Not Always Rendered Correctly - \endlist - - \section1 \B2Q 2.0.0 - - \list - \li Release date: Feb. 25, 2014 - \endlist - - \section2 Changes - \b {New Features}: - \list - \li \B2Q stack was updated to use Qt 5.2.1 on embedded Android and Linux - \li Building your own \B2Q embedded Linux stack was enabled - \li Emulator graphics performance and quality was improved (GL-streaming) - \li BeagleBone Black was added as a reference device - \li \l {Qt Virtual Keyboard} was integrated into \B2Q - \li \l {Qt Quick Enterprise Controls} was added to the \B2Q stack - \li \l {Qt Charts} was added to the \B2Q stack - \li \B2Q source code was made available via online installer - \li WiFi networking support/configuration were implemented on embedded Android - \li Ethernet connectivity was enabled on embedded Android - \endlist - - \b {Improvements}: - \list - \li Updated GDB for embedded Android toolchain - \li Enterprise demos (Charts, Enterprise Controls) were added - \li Embedded Linux: Moved to use Yocto 1.5 (Dora) - \li Demos available as examples in Qt Creator - \li Embedded Android emulator updated to Android 4.2.2 - \endlist - - \b {Fixed Bugs}: - \list - \li Embedded Android emulator: Missing Mesa headers - \li Embedded Linux emulator: Black screen in camera demo - \li Emulator tries to load host plugins - \li Sensors not working in emulators - \li Empty \c HOME environment variable in processes launched by appcontroller - \li Embedded Android emulator: C++ debugging fails - \li Qt add-ons not installed to host - \endlist - - \b {Fixed Known Issues}: - \list - \li Qt SQL: QML LocalStorage Fails to Connect to Database on Embedded Android - \li Qt XML Patterns: Module not Available on embedded Android - \li Qt Multimedia: Audio is Muted on Nexus 7 - \li Unnecessary Warnings Displayed by the Installer - \li Virtual Keyboard: Backspace Removes Two Characters - \endlist - - \section1 \B2Q 1.0.1 - - \list - \li Release date: Dec. 5, 2013 - \endlist - - \section2 Changes - \list - \li Emulator: Remote control widget version shown together with emulator version - \li Emulator: Mouse events are sent instead of touch events - \li Emulator: Raster window support added - \li Emulator: emulatorproxyd shows its version on startup - \li Emulator: Detect some network problems - \li Emulator: Fixed issues related to startup - \li Emulator: Updated source code license headers - \li Emulator: Show all VirtualBox errors - \li Emulator: Video playback support on embedded Linux - \endlist -*/ - -/*! - \page qtee-troubleshooting.html - \title Troubleshooting - \previouspage qtee-changelog.html - \nextpage qtee-licenses.html - - \note An updated version of this information may be available in Digia customer portal, - see \l {Known Issues} in \SDK \l {product page}. - - \section1 General Issues - - \section2 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 \l{Connectivity Issues}. - - If using the emulator, see \l{Installing VirtualBox}. - - \section2 I have problems deploying/launching a Qt or Qt Quick example application - - Because of a technical peculiarity in \c{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. - - \section2 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 \B2Q. See \l{Installing Boot to Qt on Target Devices}. - - \section2 Booting BD-SL-i.MX6 stops with \e {6x_bootscript not found} error - - Check the U-Boot version number. It should start with either \c{2012} or \c{2013}. - If it is \c{2009.xx}, an upgrade of the bootloader is required. For more - information, see: - - \list - \li \l http://boundarydevices.com/6q_bootscript/ - \li \l http://boundarydevices.com/switching-u-boot-versions-on-i-mx6/ - \endlist - - \target nexus-factory-reset - \section2 How do I restore my Nexus 7 to factory settings? - - Go to \l{https://developers.google.com/android/nexus/images} and - download the correct file for your device. Unpack it, and then enter the - following commands: - - \badcode - /Tools/b2qt/adb reboot bootloader - /Tools/b2qt/fastboot -w update .zip - \endcode - - \section2 How do I shut down the Nexus 7? - - If the \B2Q demo launcher is running, start the \b {Launcher - Settings} app, and select \b {Shut Down} to power off the device. - - Otherwise, make sure the Nexus 7 is connected to the development host, and run - the following command in a terminal: - \badcode - /Tools/b2qt/adb shell reboot -p - \endcode - - If the device is in the fastboot mode, use the volume button to display the - \b {Power off} option and press the power button to power off the device. - - Alternatively, press and hold the power button for 10 - seconds. This will force a reboot. - - \section2 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 \B2Q stack. - - More details and possible solutions can be found - \l {http://www.elinux.org/Beagleboard:BeagleBoneBlack_HDMI}{here}. - - \section2 Trying to build for the emulator target fails with error message \e{make: i686-android-linux-g++: Command not found} - - You need to install support libraries in order to run 32-bit programs in a - 64-bit Linux operating system. - - See \l{Installing 32-bit Support Libraries}. - - \section2 Something crashed! - - The following command shows the system log: - \badcode - /Tools/b2qt/adb logcat - \endcode - - \note When terminating an application from Qt Creator, you may see the - message \e {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. - - \section2 Mouse or touch input does not work - - See \l{Customization}. - - \note Hotplugging does not currently work, and therefore, any input device - must be present at boot time to be recognized. - - \section2 Application stops with \e{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. - - \section2 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 \l{Customization}. - - \section2 C++11 features do not work on Android - - To enable C++11 features in the compiler, add \e{CONFIG += c++11} to the .pro file. - On Embedded Linux this will be enough because there the toolchain contains a more - recent version of gcc (4.8.x). On Embedded Android however the toolchain is based on - gcc 4.6. This offers limited support for C++11 and Qt's own C++11 support is disabled, - meaning that adding \e{c++11} to \e{CONFIG} will have no effect. There is still a - possibility however to manually enable some level of C++11 support just for the - application, by adding \e{QMAKE_CXXFLAGS += -std=c++11} to the .pro file. - - \section1 Connectivity Issues - \section2 I cannot connect to my hardware device via USB - - See \l{5. Setting up USB Access to Embedded Devices}. - - \section2 adb fails with "error: more than one device and emulator" - - You have to specify which Android device you want \c{adb} to talk - to, using adb's \c{-s } option. Use the following - command to find to see the serial number of the connected - devices: - - \badcode - /Tools/b2qt/adb devices - \endcode - - \section2 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 - \l{http://askubuntu.com/questions/293816/in-virtualbox-how-do-i-set-up-host-only-virtual-machines-that-can-access-the-in}{these} - instructions. - - \section2 The emulator is stuck in \e{Waiting for display data} or fails to start properly - - Check the output of the following command: - - \badcode - /Tools/b2qt/adb devices - \endcode - - If the emulator (192.168.56.101) is not listed there, try connecting to it: - - \badcode - /Tools/b2qt/adb connect 192.168.56.101 - \endcode - - If the emulator is already listed, try disconnecting it: - \badcode - /Tools/b2qt/adb disconnect 192.168.56.101 - \endcode - - And then close the emulator and retry. - - \section2 What are the user and password to access my embedded Linux device? - - Embedded Linux devices can be accessed using user \c{root} and an empty password. - - \section2 No sound on Embedded Android devices - - When connecting a headphone or speakers while the device is running, the - audio may not be properly routed to the correct output. As a workaround, - connect the headphone or speakers before turning on the device. - - \section2 Qt WebEngine libraries cannot be found when targeting the emulator - - Qt WebEngine is not currently available for the emulators, neither eLinux - nor eAndroid. This is planned to be addressed in a later release. - - \section2 Widget-based web view is not available - - The Qt WebEngine APIs are available only for Qt Quick 2 based applications at the moment. - The QWidget-based equivalents, like QWebEngineView, will become supported in future releases. - For the time being, use the WebEngineView QML element. - - \section2 Qt Quick Compiler fails on the emulators - - The Qt Quick Compiler is not yet functional in the emulator environments, and projects - are likely fail to build or run with compilation enabled. Support for the emulators - will be added in a later release. - - \section2 QML debugging not functional when using Qt Quick Compiler - - QML debugging is not fully functional when the Qt Quick Compiler is enabled. Support - for this will be added in a later release. - - - \section2 Boundary Devices Android Jellybean i.MX6 image deploying issues - - On some hosts running the mksdcard.sh script results in the following failure messages: - - \badcode - Cannot find device with major:minor 8:20: No such device - cp: target ‘/media/BOOT/’ is not a directory - \endcode - - This means that flashing an sdcard has failed, even if the scripts seemingly runs to the end. - The issue can be worked around by adding "sleep" call before "udisks --mount" loop (search at - the end of the script): - - \badcode - sleep 2 - for n in 1 2 4 ; do - udisks --mount ${diskname}${prefix}${n} - done - \endcode - -*/ - -/*! - \page qtee-qml-reference.html - \title Add-On QML Types - \previouspage qtee-licenses.html - - The following QML modules are included in the \B2Q stack and provide - additional QML types that are useful in an embedded application: - - \annotatedlist qtee-qmlmodules - - \section1 WiFi Module - - \annotatedlist wifi-qmltypes -*/ -- cgit v1.2.3