我想将我的QT应用程序交叉编译到Toradex嵌入式Linux平台。 QT Creator商业版随附用于嵌入式Linux的内置编译器,但开放源代码没有。
因此,有什么方法可以在嵌入式Linux上编译和运行它。
答案 0 :(得分:0)
After some research, I finally get a way to do it. Here are the steps:
1. Download QT Creator and Install
2. Download QT Everywhere
https://download.qt.io/archive/qt/5.8/5.8.0/single/qt-everywhere-opensource-src-5.8.0.tar.gz.mirrorlist
3. Extract It
4. Change path to path/to/qt-everywhere
5. Configure qt-everywhere
./configure -release -device linux-imx7-g++ -device-option CROSS_COMPILE=/usr/local/oecore-x86_64/sysroots/x86_64-angstromsdk-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi- -sysroot /usr/local/oecore-x86_64/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi -skip qtwebengine -skip qtwebkit -skip qtwebkit-examples -prefix /usr/local/qt5-imx
(QT will save on the location listed in prefix, i.e here /usr/local/qt5-imx)
6. Open QT Creator
7. Goto Tools->Options, Add Compiler
-> Add GCC Compiler, add path /usr/local/oecore-x86_64/sysroots/x86_64-angstromsdk-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-g++
8. Add QT Version:
path: /usr/local/oecore-x86_64/sysroots/armv7at2hf-neon-angstrom-linux-gnueabi/usr/local/qt5-imx/bin/qmake
9. Add Debugger :
path: /usr/local/oecore-x86_64/sysroots/x86_64-angstromsdk-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-gdb
10. Add Kit
-> Select Generic Linux Device:
-> Specify GCC compiler and debugger path, which is created above
-> Add Sysroot location: /usr/local/oecore-x86_64/sysroots
-> Add QT Version: select qt version, created above
-> Apply and Close