Difference between revisions of "DIVELK-AN-002: Using Qt Creator"

From DAVE Developer's Wiki
Jump to: navigation, search
m (U0007 moved page DIVELK-AN-xxx: Using Qt Creator to DIVELK-AN-002: Using Qt Creator without leaving a redirect: Change AN index)
(History)
Line 13: Line 13:
 
|-
 
|-
 
|1.0.0
 
|1.0.0
|March 2018
+
|April 2018
|[[Axel_Embedded_Linux_Kit_(XELK)#XELK_software_components|3.0.0]]
+
|[[Diva_Embedded_Linux_Kit_(DIVELK)#DIVELK_software_components|DIVELK 4.0.0]]
 
|First release
 
|First release
 
|}
 
|}

Revision as of 15:35, 31 August 2018

Info Box
Yocto-logo.png Applies to Yocto
Diva-am335x-overview.png Applies to Diva

History[edit | edit source]

Version Date XELK version Notes
1.0.0 April 2018 DIVELK 4.0.0 First release

Introduction[edit | edit source]

This application note details QT Creator setup and configuration in XELK MVM

Setting up Qt Creator to build for XELK[edit | edit source]

Qt Creator Installation[edit | edit source]

To install Qt Creator inside your toolchain launch a terminal emulator and run

dvdk@vagrant-ubuntu-trusty-64:~$ cd axel/
dvdk@vagrant-ubuntu-trusty-64:~/axel$ ./qt-creator-opensource.run

An installation wizard will appear. Clik Next to proced with the installation.

QtCreator XELK 3 0 0 01.png

Select Skip.

QtCreator XELK 3 0 0 02.png

Select Next.

QtCreator XELK 3 0 0 03.png

Select the install directory or click Next.

QtCreator XELK 3 0 0 04.png

Select Next.

QtCreator XELK 3 0 0 05.png

Click Next again.

QtCreator XELK 3 0 0 06.png

And then click Install and complete the installation.

QtCreator XELK 3 0 0 07.png

Then Finish to exit the setup wizard.

QtCreator XELK 3 0 0 08.png

Automatic configuration[edit | edit source]

Now it is necessary to add the definition of your board before developing and compiling your applications.

In order to add the device information automatically, DAVE provides a simple setup script.

TBD


Manual configuration[edit | edit source]

If you don't want to use the automatic setup or want to customize the configuration, in this section we details all the step required.

Linaro Toolchain[edit | edit source]

Download the following archive and extract it

mkdir -p /home/dvdk/toolchain
tar -xvf gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf.tar.xz -C /home/dvdk/tolchain

Devices[edit | edit source]

Go to Tools -> Options menu

QtCreator XELK 3 0 0 09.png

Select Devices and click Add

QtCreator XELK 3 0 0 22.png

Choose the Generic Linux device

QtCreator XELK 3 0 0 23.png

Insert the IP address of your device, root as username and leave password empty (this is the default configuration of DIVELK root file systems). Make sure that the device is connected to the network and your virtual machine networking is correctly configured (see this article for more details).

Then click Next.

QtCreator XELK 3 0 0 24.png

If everything went ok you should see a dialog like the image below.

QtCreator XELK 3 0 0 25.png

And finally this is how the Devices window should look like.

QtCreator XELK 3 0 0 26.png

GCC & Cross Compilation[edit | edit source]

Next you need to configure the cross compilation tool inside Build & Run -> Compiler.

QtCreator XELK 3 0 0 27.png

Click Add -> GCC and add the compiler path.

/home/dvdk/toolchain/gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabi-gcc

And click Apply.

QtCreator XELK 3 0 0 29.png

Do the same for the C++ cross compilation tool.

/home/dvdk/toolchain/gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabi-g++
QtCreator XELK 3 0 0 28.png

Debugger GDB[edit | edit source]

Now it is necessary to add a debugger. In order to do this go to the Debuggers tab and click Add

QtCreator XELK 3 0 0 30.png

And then select the GDB debugger at the location

home/dvdk/toolchain/gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabi-gdb

and click Apply.

QtCreator XELK 3 0 0 31.png

Qt Version[edit | edit source]

Next you need to add the Qt Version installed on your device. Go to Qt Version click Add and select the following qmake file.

/home/dvdk/diva/sdk/divelk-4.0.0-qt5/sysroots/x86_64-aragosdk-linux/usr/bin/qt5/qmake
QtCreator XELK 3 0 0 32.png

Kits[edit | edit source]

The last step is to add a new kit. Go to Kits and click Add and complete the information as shown below.

QtCreator XELK 3 0 0 33.png

Pay attention that in Qt mkspec you need to write

linux-oe-g++
QtCreator XELK 3 0 0 34.png

After this your setup is complete and you can proceed and create your Qt applications.

Qt application example[edit | edit source]

Now that the setup is finished, you can create your first application.

In order to debug your application with QtCreator, it is mandatory to utilize the linaro toolchain Toolchain . Furthermore, if the Weston compositor is active, the debug process is slow. For this reason it is higly recomanded to disable it with

root@diva:~# /etc/init.d/weston stop

Now open a new terminal and source the environment variables with the command.

dvdk@vagrant-ubuntu-trusty-64:~/diva/sdk/divelk-4.0.0-qt5$ source environment-setup

In the same terminal type the following command (we assume you didn't change the default installation directory)

dvdk@vagrant-ubuntu-trusty-64:~$ ./qtcreator-4.3.0/bin/qtcreator


200px-Emblem-important.svg.png It is important to repeat the previous two step every time you start QTCreator 200px-Emblem-important.svg.png

Now click on New Project

QtCreator XELK 3 0 0 11.png

Select Application Qt Widgets Application and click Choose...

QtCreator XELK 3 0 0 12.png

Now call the Project Test and press Next.

QtCreator XELK 3 0 0 13.png

Select the XELK Kit and click Next.

QtCreator XELK 3 0 0 14.png

Choose the class name for your application.

QtCreator XELK 3 0 0 15.png

Click Finish to conclude the setup.

QtCreator XELK 3 0 0 16.png

To add a clickable button to your application, select the Edit window and select Test -> Forms -> mainwindow.ui

QtCreator XELK 3 0 0 17.png

Click on Push Button in the Buttons tab and drag it to the main window view. In order to edit the text displayed by the label, double click it and write "Hello World!".

QtCreator XELK 3 0 0 18.png

After that, you need to insert the following two line inside the Test.pro file

target.path = /tmp/Test # path on device
INSTALLS += target

Where /temp/Test is the path in which your application will be downloaded inside the device.

QtCreator XELK 3 0 0 19.png

The last step before running the application inside the device is to configure Qt backend into application command line arguments: open the Project window and select the Run configuration, then type -platform eglfs into Arguments

QtCreator XELK 3 0 0 20.png

After these changes you are ready to debug your application inside your board with the Run/Debug command QtCreator XELK 3 0 0 35.png

QtCreator XELK 3 0 0 21.png