Difference between revisions of "Qt5Creator toolchain Qt 5.11.3"
From ESS-WIKI
Yunjin.jiang (talk | contribs) |
Xingxing.li (talk | contribs) |
||
Line 96: | Line 96: | ||
[[File:RK3288 Add Kits.png|RTENOTITLE]] | [[File:RK3288 Add Kits.png|RTENOTITLE]] | ||
+ | |||
+ | == Creating the Project == | ||
+ | |||
+ | #Bring up "New" dailog using "File" -> "New File or Project..." | ||
+ | #Select "Applications" -> 'Qt Widgets Application" | ||
+ | #Click "Choose..." | ||
+ | #;[[File:RK3399 Project 001.png|RTENOTITLE]] | ||
+ | #Use "Hello" as name | ||
+ | #Create in "/mnt/sda1/work/qt/qt_PJ" | ||
+ | #Click "Next" | ||
+ | #;[[File:RK3399 Qt Project local.png|RTENOTITLE]] | ||
+ | #Check "RK toolchain" | ||
+ | #Click "Next". | ||
+ | #;[[File:RK3399 Qt Project toolchain.png|RTENOTITLE]] | ||
+ | #Use default settings for "Class Information" | ||
+ | #Click "Next" | ||
+ | #;[[File:RK3399 QT Project last.png|RTENOTITLE]] | ||
+ | #Use default settings for "Project Management" | ||
+ | #Click "Finish" | ||
+ | #;[[File:RK3399 Qt Project last2.png|RTENOTITLE]] | ||
+ | #Double click "Hello.pro" to switch to editor window | ||
+ | #In new project it is necessary to add following two lines into qt project file. | ||
+ | #:<code>target.path = .<br/>INSTALLS += target</code> | ||
+ | #;[[File:RK3399 Qt Project code002.png|RTENOTITLE]] | ||
+ | #Press "Ctrl+S" to save file. | ||
+ | #Double click "mainwindow.ui" to switch to Design mode | ||
+ | #Drag & drop one Label widget on main form, use property editor on the right side to change text and font size | ||
+ | #;[[File:2015-01-30 174418.png|RTENOTITLE]] | ||
+ | #;[[File:RK3399 Qt Project code003.png|RTENOTITLE]] | ||
+ | #Save all project files using "File" -> "Save All" | ||
+ | |||
+ | == Building the Project == | ||
+ | |||
+ | #Switch to "Projects" mode | ||
+ | #Check if "build configuration" is set to "Debug". | ||
+ | #;[[File:RK3399 Qt debug setting.png|RTENOTITLE]] | ||
+ | #Check if "Files to deploy" is correct | ||
+ | #;[[File:RK3399 Qt run setting.png|RTENOTITLE]] | ||
+ | #Set environment variable DISPLAY in QtCreator -> Projects -> Run -> Run Environment. The value of DISPLAY is obtained from the rk3399. For example, execute instruction '''''echo $DISPLAY''''' on RK3399. | ||
+ | #;[[File:RK3399 Qt ENV Display.png|RTENOTITLE]] | ||
+ | #Switch to "Edit" mode | ||
+ | #Click "Build" using context menu of project "Hello" | ||
+ | #;[[File:RK3399 Qt build start.png|RTENOTITLE]] | ||
+ | #The green "Build" bar means no error occured. | ||
+ | #;[[File:RK3399 Qt build status.png|RTENOTITLE]] | ||
+ | #Press "Alt+4" to show "Compile Output". [[File:RK3399 Qt build output.png|RTENOTITLE]] | ||
+ | |||
+ | == Deploying the Application == | ||
+ | |||
+ | #Click "Deploy" using context menu of project Hello[[File:RK3399 Qt deploy start.PNG|RTENOTITLE]] | ||
+ | #The green "Deploy" bar indicates no error occured.[[File:RK3399 Qt deploy output.png|RTENOTITLE]] | ||
+ | |||
+ | == Debugging the Application == | ||
+ | |||
+ | #Click debug icon to start debugging. | ||
+ | #;[[File:RK3399 Qt debug start.png|RTENOTITLE]] | ||
+ | #Press "Alt+3" to show "Application Output"[[File:RK3399 Qt debug output.png|RTENOTITLE]] | ||
+ | #The "Hello" shows up on primary display. | ||
+ | #;[[File:RK3399 Qt result show.png|RTENOTITLE]] | ||
+ | #Click "stop" to stop debugging. | ||
+ | #;[[File:RK3399 Qt debug stop.png|RTENOTITLE]] | ||
+ | #The deafult desktop returns back.[[File:RK3399 Qt default Desktop.png|RTENOTITLE]] |
Revision as of 03:08, 6 January 2022
Contents
Prerequisites
Debian10(buster) is highly recommended OS to develop.
Installing required packages
Please login and perform the following commands:
$ sudo apt-get install -y build-essential $ sudo apt-get install -y qtcreator $ sudo apt-get install -y qt5-default $ sudo apt-get install -y qt5-doc $ sudo apt-get install -y qt5-doc-html qtbase5-doc-html $ sudo apt-get install -y qtbase5-examples $ sudo apt-get install -y qt5-qmake $ sudo apt-get install -y rsync $ sudo apt-get install -y gcc-8-arm-linux-gnueabihf g++-8-arm-linux-gnueabihf $ sudo apt-get install -y gcc-8-aarch64-linux-gnu g++-8-aarch64-linux-gnu
Link arm-linux-gnu*-8 to arm-linux-gnu* and aarch64-linux-gnu*-8 to aarch64-linux-gnu*:
$ sudo su $ cd /usr/bin $ for f in $(ls arm-linux-gnu*-8);do ln -sf $f $(echo $f|sed "s/-8//");done $ for f in $(ls aarch64-linux-gnu*-8);do ln -sf $f $(echo $f|sed "s/-8//");done $ exit
Installing cross toolchain
Please download RK3288(Password: gm9i) and RK3399(Password: 0kkn) cross compiler toolchain first. Then execute the following command to unzip the cross compiler tool to the /opt directory
For RK3288
$ sudo rm -rf /opt/toolchain_Qt_V5.11.3/rk3288/ $ sudo mkdir -p /opt/toolchain_Qt_V5.11.3/rk3288/ $ sudo tar -zxf rk3288_toolchain_Qt_V5.11.3_*.tar.gz -C /opt/toolchain_Qt_V5.11.3/rk3288/
For RK3399
$ sudo rm -rf /opt/toolchain_Qt_V5.11.3/rk3399/ $ sudo mkdir -p /opt/toolchain_Qt_V5.11.3/rk3399/ $ sudo tar -zxvf rk3399_toolchain_Qt_V5.11.3_*.tar.gz -C /opt/toolchain_Qt_V5.11.3/rk3399/
Working within QtCreator
The method of using this toolchain with qtcreator is the same as 5.9.4 toolchain. Therefore, you can refer to rk3288_qt5Creator.
However, the following differences need to be noted:
Config QtCreator ---- Qt Versions
- Bring up the options dialog using "Tools" -> "Options..."
- Select the "Build & Run" page on the left, switch to "Qt Versions" tab, and click "Add..."
- Select qmake file
- Select "/opt/toolchain_Qt_V5.11.3/rk3288/sysroot/qmake-debian-buster-armhf".
- or
- RK3399 Select "/opt/toolchain_Qt_V5.11.3/rk3399/sysroot/qmake".
- Select "/opt/toolchain_Qt_V5.11.3/rk3288/sysroot/qmake-debian-buster-armhf".
- Input Version name "Qt 5.11.3 (RK3288 )" or "Qt 5.11.3 (RK3399 )".
Config QtCreator ---- Kits
- Bring up the options dialog using "Tools" -> "Options..."
- Select the "Build & Run" page on the left, switch to "Kits" tab, and click "Add..."
- Click "Add".
- RK3288
- Name
- input "RK3288 toolchain"
- Device Tpye
- Select "Generic Linux Device"
- Device
- Select "RK3288"
- Compiler
- Select "GCC (C,arm 32bit in /usr/bin)" and "GCC (C++,arm 32bit in /usr/bin)"
- Qt version
- Select "Qt 5.11.3 (RK3288)"
RK3399
- Name
- input "RK3399 toolchain"
- Device Tpye
- Select "Generic Linux Device"
- Device
- Select "RK3399"
- Compiler
- Select "GCC (C,arm 64bit in /usr/bin)" and "GCC (C++,arm 64bit in /usr/bin)"
- Qt version
- Select "Qt 5.11.3 (RK3399)"
Creating the Project
- Bring up "New" dailog using "File" -> "New File or Project..."
- Select "Applications" -> 'Qt Widgets Application"
- Click "Choose..."
- Use "Hello" as name
- Create in "/mnt/sda1/work/qt/qt_PJ"
- Click "Next"
- Check "RK toolchain"
- Click "Next".
- Use default settings for "Class Information"
- Click "Next"
- Use default settings for "Project Management"
- Click "Finish"
- Double click "Hello.pro" to switch to editor window
- In new project it is necessary to add following two lines into qt project file.
- Press "Ctrl+S" to save file.
- Double click "mainwindow.ui" to switch to Design mode
- Drag & drop one Label widget on main form, use property editor on the right side to change text and font size
- Save all project files using "File" -> "Save All"
Building the Project
- Switch to "Projects" mode
- Check if "build configuration" is set to "Debug".
- Check if "Files to deploy" is correct
- Set environment variable DISPLAY in QtCreator -> Projects -> Run -> Run Environment. The value of DISPLAY is obtained from the rk3399. For example, execute instruction echo $DISPLAY on RK3399.
- Switch to "Edit" mode
- Click "Build" using context menu of project "Hello"
- The green "Build" bar means no error occured.
- Press "Alt+4" to show "Compile Output".
Deploying the Application
- Click "Deploy" using context menu of project Hello
- The green "Deploy" bar indicates no error occured.