如果虚拟机中还未安装qt那么建议先安装一下,当然这不是必须的,不安装也不会有啥影响
建议安装一下,进入qt的下载页面Index of /找到 qt-opensource-linux-x64-5.12.9.run下载一路安装就行了即可,详细步骤百度一大堆这一步
正题来了其实我们移植就是编译qt的源码,然后将源码传到arm板,再配置一下环境变量就行了,
这个前提是arm需要先移植好了tslib(上一篇有写如何移植tslib到arm板),当然交叉编译工具链也是必须先自己安装好了,当你的虚拟机ubuntu安装了交叉编译链(具体步骤百度一大堆)并且arm板移植好了tslib(上一篇有写),测试tslib没问题了,那么现在就可以来移植qt了
进入qt的下载界面,选择qt-everywhere-src-5.12.9下载即可得到qt的源码,接着配置一下源码
这里的qmake.conf是上一步cp命令产生的新的里面的
接着在源码目录下建一个shell脚本,内容如下
#!/bin/sh
../qt-everywhere-opensource-src-5.12.10/configure \
-xplatform aarch64-linux-gnu-g++ \
-verbose \
-opensource \
-release \
-shared \
-confirm-license \
-make libs \
-nomake tests \
-nomake examples \
-skip qtmacextras \
-skip qtandroidextras \
-prefix /home/hxz/qt_arm/qt_5.12.10_arm
这里特别关注 -prefix 指定的编译后的文件存放目录,这个目录一般跟上面这样建,执行这个shell脚本前要先建这个目录。还要关注-xplatform 指定交叉编译器的前缀。
sudo bash 这个shell脚本
接着sudo make -j8
接着 sudo make install
大功告成接着可以在
这个指定目录下看得很多文件,我们只需将这些文件传到arm板上
把移到arm的/qt/lib目录里的东西放到arm的/lib下
接着配置一下即可
vi /etc/profile
参考这个配置即可
接着source /etc/profile
编写qt,用编译出的工具进行qmake就能移植过来执行了
当遇到qt程序触摸屏无法使用,要先执行ts_calibrate