linux平台移植qt
话不多说直接开干,首先需要下载源码包,进入网址https://download.qt.io/archive/qt/
进行下载对应的版本即可,比如我这里下载5.12.12
版本的,如下图找到即可。
然后把下载的包放到服务器上进行解压tar xpf qt-everywhere-src-5.12.12.tar.xz
,然后进入源码根目录cd qt-everywhere-src-5.12.12/
,创建一个脚本文件去配置qt,比如我这里是test.sh
,加入如下内容
#!/bin/sh
./configure -prefix /root/test/xxx \ //这里指定你的安装目录
-opensource \
-debug \
-confirm-license \
-xplatform linux-aarch64-gnu-g++ \ //这里根据arm还是arm64选择对应的文件 qtbase/mkspecs/linux-aarch64-gnu-g++
-no-opengl \
-no-pch \
-shared \
-no-iconv \
-no-xcb \
最后记得修改test.sh
的权限,使用chmod 777 test.sh
即可修改,然后./test.sh
执行脚本即可,等待一段时间后出现如下图的结果,说明成功
然后看上图的提示,直接make
和make isntall
即可,所以我们直接执行make -j16 && make install
即可。然后就是等待编译的过程,时间可能会有点久。出现如下截图即可算编译成功
然后我们可以进入安装目录查看编译生成的文件
其中bin为一些可执行文件,example
为一些示例文件,我们准备好lib,plugins,qml,等文件即可。在/etc/profile
中添加如下内容即可。
export QT_ROOT=/opt/5_9_9
export QT_QPA_PLATFORM_PLUGIN_PATH=$QT_ROOT/plugins
export QT_QPA_FONTDIR=$QT_ROOT/fonts
export QT_QPA_PLATFORM=linuxfb:tty=/dev/fb0
export QT_PLUGIN_PATH=$QT_ROOT/plugins
export LD_LIBRARY_PATH=$QT_ROOT/lib:$QT_ROOT/plugins/platforms
export QML2_IMPORT_PATH=$QT_ROOT/qml
我是将所有需要用到的放到/opt/5_12_12
下,其中不要忘记添加字库文件,在install目录中查找.ttf文件使用即可。