Open main menu

DAVE Developer's Wiki β

Changes

DESK-MX-L-AN-0007: Getting Started With QT Creator

2,591 bytes added, 14:23, 26 August 2022
m
{{InfoBoxTop}}{{AppliesToAXEL Lite AN}}{{InfoBoxBottom}}{{WarningMessage|text=This application note was validated against specific versions of the kit only. It may not work with other versions. Supported versions are listed in the ''History'' section.}}=History= {| class="wikitable" border="1"!Page version!Date!XELK version!Notes|-|1.0.0|March 2018|[[Axel_Embedded_Linux_Kit_(XELK)#XELK_software_components|XELK 3.0.0]]|First release|-|{{oldid|8847|2.0.0}}|August 2019|[[Axel_Embedded_Linux_Kit_(XELK)#XELK_software_components|XELK 4.0.0]]|Updated XELK version|-|3.0.0|August 2022|{{pageoldid|DESK-MX6-L|15794|DESK-MX6-L 1.0.0}}|DESK-MX6-L version|} = Introduction = This application note details QT Creator setup and configuration in [[DESK-MX6-L|DESK-MX6-L]] [[Managed Virtual Machine (MVM)|MVM]] = Setting up Qt Creator to build for XELK DESK-MX6-L ={{ImportantMessage|text=Note: The version of Qt Creator may differ from images below. The version used is the release is 4.4.1 which can be downloaded form [https://download.qt.io/archive/qtcreator/4.4/4.4.1/ Qt archive server]}} == Qt Creator Installation == To install Qt Creator inside your toolchain lunch launch a terminal emulator and run  
<pre>
dvdk@vagrant-ubuntu-trusty-64:~$ cd axel/dvdk@vagrantdesk-ubuntumx-trusty-64:~l/axel$ ./qt-creator-opensource.run
</pre>
<pre>dvdk@vagrant:~/desk-mx-l$ ./qt-creator-opensource-linux-x86_64-4.4.1.run </pre> An installation wizard will appear. Clik '''Next''' to proced with the installation.
[[File:QtCreator XELK 3 0 0 01-4.4.1_setup.png|200px400px|border|center]]
Clik Next to proced with the installationSelect '''Skip'''.
[[File:QtCreator XELK 3 0 0 02-4.4.1_skip.png|200px400px|border|center]]
Select Skip'''Next'''.
[[File:QtCreator XELK 3 0 0 03-4.4.1_next.png|200px400px|border|center]]Select Next.
[[File:QtCreator XELK 3 0 0 04Select the install directory or click '''Next'''.png|200px|border|center]]
Select the install directory or click Next[[File:QtCreator-4.4.1_folder.png|400px|border|center]]
[[File:QtCreator XELK 3 0 0 05Select '''Next'''.png|200px|border|center]]
Select Next[[File:QtCreator-4.4.1_components.png|400px|border|center]]
[[File:QtCreator XELK 3 0 0 06Click '''Next''' again.png|200px|border|center]]
Click Next again[[File:QtCreator-4.4.1_license.png|400px|border|center]]
[[File:QtCreator XELK 3 0 0 07And then click '''Install''' and complete the installation.png|200px|border|center]]
And then click install and complete the installation[[File:QtCreator-4.4.1_install.png|400px|border|center]]
[[File:QtCreator XELK 3 0 0 08Then '''Finish''' to exit the setup wizard.png|200px|border|center]]
== Automatic configuration ==[[File:QtCreator-4.4.1_finish.png|400px|border|center]]
Now it is necessary to add the definition of your board before proceding developing your first application.== Manual configuration ==
For adding If you don't want to use the board definition runautomatic setup or want to customize the configuration, in this section we details all the step required.
<pre>dvdk@vagrant-ubuntu-trusty-64:~$ cd axel/dvdk@vagrant-ubuntu-trusty-64:~/axel$ ./qt-post-install.sh</pre>=== Devices ===
If the installation process went ok you should see inside the Go to <code>Tools->Options </code> menu Kits named XELK.:
[[File:QtCreator XELK 3 0 0 09-4.4.1_tools-options.png|400px1000px|border|center]]
Select the Kits tab <code>Devices</code> and make sure that your configurations mateches the one displayed. [[Fileclick '''Add''':QtCreator XELK 3 0 0 10.png|400px|border|center]]
== Manual configuration ==[[File:QtCreator-4.4.1_devices-add.png|700px|border|center]]
Go to Tools->Options menu DevicesChoose the ''Generic Linux device'':
[[File:QtCreator XELK 3 0 0 09-4.4.1_devices-linux-device.png|400px500px|border|center]]
Select Insert the Devices tab IP address of your device, ''root'' as username and press Addleave password empty (this is the default configuration of DESK-MX6-L root file systems). Make sure that the device is connected to the network and your virtual machine networking is correctly configured (see [[VirtualBox Network Configuration|this]] article for more details).
[[FileThen click '''Next''':QtCreator XELK 3 0 0 22.png|400px|border|center]]
Choose the generic [[File:QtCreator-4.4.1_devices-linux -device-EVK.png|600px|border|center]]
[[FileThe device will be created and the connectivity will be tested:QtCreator XELK 3 0 0 23.png|400px|border|center]]
Insert the ip address of your device and the username and password of the root account[[File:QtCreator-4.4. Make sure that the 1_devices-linux-device is connected to the network and your virtual machine is configured to use a bridge connection-EVK-connect.png|600px|border|center]]
[[File:QtCreator XELK 3 0 0 24If everything went ok you should see a dialog like the image below.png|400px|border|center]]
If everithing went ok you should see a dialog like the next one[[File:QtCreator-4.4.1_devices-linux-device-EVK-test.png|500px|border|center]]
[[File:QtCreator XELK 3 0 0 25And finally, this is what the <code>Devices</code> window should look like.png|400px|border|center]]
And finally this is how the [[File:QtCreator-4.4.1_devices-linux-device window should look like-EVK-configured.png|800px|border|center]]
[[File:QtCreator XELK 3 0 0 26.png|400px|border|center]]=== GCC & Cross Compilation ===
Next you need to configure the cross compilation tool inside <code>Build & Run -> Compiler</code>.
[[File:QtCreator XELK 3 0 0 27-4.4.1_devices-linux-build-and-run.png|400px800px|border|center]]
Click <code>Add -> GCC </code> and add the compiler path at.
<pre>
/home/dvdk/axeldesk-mx-l/sdk/latestlatest_desk-mx6-l/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc
</pre>
And click '''Apply'''.
[[File:QtCreator XELK 3 0 0 29-4.4.1_devices-linux-build-and-run-gcc.png|400px1200px|border|center]]
Do the same fort for the GC++ cross compilation tool.
<pre>
/home/dvdk/axeldesk-mx-l/sdk/latestlatest_desk-mx6-l/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++
</pre>
[[File:QtCreator XELK 3 0 0 28-4.4.1_devices-linux-build-and-run-g++.png|400px1200px|border|center]]
Now it is necessary to add a debuger. In order to do this go to the Debuggers tab and click add=== Debugger GDB ===
[[File:QtCreator XELK 3 0 0 30Now it is necessary to add a debugger.png|400px|border|center]] And In order to do this go to the <code>Debuggers</code> tab and click '''Add''' and then select the GDB debugger at the location
<pre>
/home/dvdk/axeldesk-mx-l/sdk/latestlatest_desk-mx6-l/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gdb
</pre>
and click '''Apply'''.  [[File:QtCreator-4.4.1_devices-linux-build-and-run-gdb.png|1200px|border|center]]
[[File:QtCreator XELK 3 0 0 31.png|400px|border|center]]=== Qt Version ===
Next you need to add the Qt Version installed on your devicesdevice. Go to <code>Qt Version </code> click '''Add ''' and select the following qmake file.
<pre>
/home/dvdk/axeldesk-mx-l/sdk/xelklatest_desk-mx6-3.0.1l/sysroots/x86_64-pokysdk-linux/usr/bin/qt5/qmake
</pre>
[[File:QtCreator XELK 3 0 0 32-4.4.1_devices-linux-build-and-run-qmake.png|400px1200px|border|center]]
The last step is to add a new kit. Go to === Kits and click Add and complete the information as showed below===
[[File:QtCreator XELK 3 0 0 33The last step is to add a new kit.png|400px|border|center]]Go to <code>Kits</code> and click '''Add''' and complete the information as shown below. Pay attention that in <code>Qt mkspec</code> you need to write
<pre>
linux-oe-g++
</pre>
 
[[File:QtCreator-4.4.1_devices-linux-build-and-run-EVK.png|1200px|border|center]]
 
After this your setup is complete and you can proceed and create your Qt applications.
== Qt application example ==
Now that the setup is finished, you can create your first application
 Open a new terminal and source the enviroment environment variables with the command.
<pre>
dvdk@vagrant:~/desk-mx-ubuntul$ source desk-trustymx6-64:~$ l-1.0./env0_env.sh
</pre>
In the same terminal digit type the following command if (we assume you didendidn't change the default installation directory.)
<pre>
dvdk@vagrant-ubuntu-trusty-64:~$ ./qtcreator-4.34.01/bin/qtcreator
</pre>
{{ImportantMessage|text=It is important to repeat the previous two steps every time you start QTCreator}}
Now click on <code>New Project</code>
Close the tab and create a new project[[File:QtCreator-4.4.1_project.png|1200px|border|center]]
[[File:QtCreator XELK 3 0 0 11Select Application Qt Widgets Application and click '''Choose.png|400px|border|center]]..'''
Select Application Qt Widgets Application and click Choose...[[File:QtCreator XELK 3 0 0 12-4.4.1_new-project.png|400px800px|border|center]]
Now call the name Project ''Test '' and pres press '''Next'''.
[[File:QtCreator XELK 3 0 0 13-4.4.1_new-project-test.png|400px800px|border|center]]
Select the XELK Kit ''SBC AXEL EVK'' and click '''Next'''.
[[File:QtCreator XELK 3 0 0 14-4.4.1_new-project-SBC-AXEL-EVK.png|400px800px|border|center]]
Choose the ''class '' name for your application.
[[File:QtCreator XELK 3 0 0 15-4.4.1_new-project-SBC-AXEL-EVK-class.png|400px800px|border|center]]
Click finish and '''Finish''' to conclude the setup.
[[File:QtCreator XELK 3 0 0 16-4.4.1_new-project-SBC-AXEL-EVK-finish.png|400px800px|border|center]]
Now you will To add a clickable button to your application. In order to do this, select from the <code>Edit </code> window and select <code>Test->Forms->mainwindow.ui</code>
[[File:QtCreator XELK 3 0 0 17-4.4.1_project-Test-MainWindow.png|400px1200px|border|center]]
To add a Push Button click Click on Push Button in the Buttons tab and drag it to the main widown window view. In order to edit the text displayed by the label, dubble double click it and write ''"Hello World!"''.
[[File:QtCreator XELK 3 0 0 18-4.4.1_project-Test-MainWindow-Pushbutton.png|400px1200px|border|center]]
After that, you need to insert the following two line inside the ''Test.pro '' file
<pre>
target.path = /tmphome/root/Test # path on device</pre><pre>
INSTALLS += target
</pre>
Where <code>/temphome/root/Test </code> is the path in which your application will be dowloaded downloaded inside the device.
[[File:QtCreator XELK 3 0 0 19-4.4.1_project-Test-MainWindow-TestPro.png|400px1200px|border|center]] Build the project in order to complete the configuration and set the overall vars:
The last step before running the application inside the device is to select the Project window select the Run configuration and as Arguments[[File:QtCreator-4.4.1_project-Test-MainWindow-Build.png|1200px|border|center]]
The last step before running the application inside the device is to configure Qt backend into application command line arguments: open the <precode>Project</code> window and select the <code>Run</code> configuration, then type <code>-platform eglfs</code> into <code>Arguments</code> [[File:QtCreator-4.4.1_project-Test-MainWindow-platform eglfs.png|1200px|border|center]] After these changes you are ready to debug your application inside your board with the <code>Run/Debug</precode>command [[File:QtCreator XELK 3 0 0 35.png|30px]]
[[File:QtCreator XELK 3 0 0 20-4.4.1_project-Test-MainWindow-debug.png|400px1200px|border|center]]
After these changes you are The debugger (via <code>gdb server</code>) will be activated and the debug window will be ready to debug your application directly inside your board with the Run/Debug command.:
[[File:QtCreator XELK 3 0 0 21-4.4.1_project-Test-MainWindow-debug-running.png|400px1200px|border|center]]
8,204
edits