- qt源码下载:https://download.qt.io/development_releases/qt/
- 例如这个版本https://download.qt.io/archive/qt/5.13/5.13.2/single/
- 我们需要编译的是这个版本 linux-mipsel-broadcom-97425-g++
- 进到路径 cd qt-everywhere-src-5.13.2/qtbase/mkspecs/devices/linux-mipsel-broadcom-97425-g++
- 先看一下qmake.conf 里面的编译 CROSS_COMPILE = mipsel-linux- 是不是这个编译器
- 在ubuntu下 看一下是否有 mipsel-linux- 交叉编译器, 如果ubuntu 里面没有这个交叉编译器, 先去安装一个 可以参考: https://blog.csdn.net/xingjiarong/article/details/49862159
- 回到 qt-everywhere-opensource-src-5.6.0-rc路径下, 需要执行 configure 文件, 执行命令我们写个脚本 build.sh
- /opt/qt5.13.2-mipsel/ 这个是安装路径, -xplatform devices/linux-mipsel-broadcom-97425-g++ 是安装mipsel版本
注意并没有安装xcb(在图形界面中显示需要用到库)
我的虚拟机上安装过tslib(触摸屏库),所以直接加上了, 如果ubuntu没有,需要安装tslib,请先交叉编译tslib./configure -prefix /opt/qt5.13.2-mipsel/\ -release -opensource -make libs \ -xplatform devices/linux-mipsel-broadcom-97425-g++ \ -optimized-qmake \ -pch \ -qt-libjpeg \ -qt-libpng \ -qt-zlib \ -qpa linuxfb \ -no-opengl \ -skip qt3d \ -skip qtcanvas3d \ -skip qtpurchasing \ -no-sse2 \ -no-openssl \ -no-cups \ -no-glib \ -no-iconv \ -no-pch\ -make examples \ -make tools \ -skip qtvirtualkeyboard \ -tslib \ -I/opt/tslib-mipsel/include \ -L/opt/tslib-mipsel/lib \ -recheck-all
- CMake Error at qtbase/cmake/QtProcessConfigureArgs.cmake:46 (list):
list does not recognize sub-command FILTER 如果提示这个错误 说明cmake版本太低, 升级cmake, 或者更换 qt 的低版本 -
ERROR: Cannot compile a minimal program. The toolchain or QMakeSpec is broken.
Check config.log for details. 如果提示这个错误 或者这个错误: Failed to process makespec for platform 'devices/linux-mipsel-broadcom-97425-g++' 修改 vi qtbase/mkspecs/devices/linux-mipsel-broadcom-97425-g++/qmake.conf 注释掉 isEmpty 和 带 error 的那几行 然后在执行 build.sh
-
生成 Makefile文件之后 执行 make -j8 需要一段时间
-
make install
-
cd /opt/qt5.13.2-mipsel/bin
-
ln -s qmake qmake-mipsel-5.13.2
-
vi ~/.profile PATH="$PATH:/opt/qt5.13.2-mipsel/bin/" 添加环境变量 source ~/.profile
-
qmake 按tab键 看看是否成功
-
在需要编译龙芯平台的路径下 执行 qmake-mipsel-5.13.2 ../ 生成新的makefile文件,执行make编译
ubuntu qt 交叉编译龙芯平台
最新推荐文章于 2024-05-12 21:14:08 发布