关于交叉编译移植到Debian开发板的一些随笔

接收的Qt项目,需要移植到Debian开发板运行。

首先在虚拟机上安装了交叉编译环境,编译产生可执行文件。

在虚拟机用ldd命令查看所依赖库,报错***不是二进制可执行文件,原因:环境不同,aarch64的环境下的可执行文件不能在linux下使用。尝试了一些打包所有静态库的方法,检索到的库为空,难搞。

直接拷贝可执行文件到开发板,执行,有点效果,但是功能不全,有登录界面,之后闪退,报错提示,缺少一些库,比如libqt***.so等等。

用ldd指令查看依赖库,可以列出所有所需库,再用sudo find / *name* 查看系统中库的位置(没有则安装),编辑~/.bashrc文件,export libbararypath,export qtpluginpath,激活使其生效。

继续执行程序,看是否useful,提示还是缺少数据库驱动,本人使用的开发板为麒麟架构,厂家已经安装了两个版本的qt,4.10.11和5.14.10,本人的交叉编译环境qt是5.12.10,原以为可能版本不一致导致,做过尝试,将虚拟机下的数据库驱动文件复制到开发板,ldd显示已连接,但运行显示qt版本库不兼容问题,网上说法众多,大体意思是重交叉编译,产生一个所需版本的数据库驱动文件,拷贝到开发板使用。

前段时间被搭建交叉编译搞的很烦,又长又慢,不想重弄,就自己摸索。

尝试了如下方法:

cpp 复制代码
1、打开终端

2、更新系统的包列表
sudo apt update

3、安装QT5默认组件
sudo apt install qt5-default

4、如果缺少额外的qt模块,搜索继续安装
apt search qt5

5、安装缺少模块,比如libqt5webengine7
sudo apt install libqt5webengine7

6、如果要装qt creator ide
sudo apt install qtcreator

success!

相关推荐
洋芋土豆1 小时前
linux文件及目录管理和vim编辑
linux·vim
柳鲲鹏1 小时前
RGB转换为NV12,查表式算法
linux·c语言·算法
程序猿(雷霆之王)1 小时前
Linux——线程安全
linux·运维·服务器
wdfk_prog2 小时前
[Linux]学习笔记系列 -- [kernel][time]timer
linux·笔记·学习
fy zs2 小时前
linux下动静态库
linux
不做无法实现的梦~3 小时前
机载电脑部署安装px4环境详细教程
linux
特轮飞3 小时前
Linux网络协议ARP IGMP ICMP的理解
linux·运维·网络协议
四维碎片3 小时前
【Qt】大数据量表格刷新优化--只刷新可见区域
开发语言·qt
DeeplyMind3 小时前
第10章:中断处理-6:Implementing a Handler
linux·驱动开发
jerryinwuhan3 小时前
Linux常用命令练习题
linux·运维·服务器