关于交叉编译移植到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!

相关推荐
db_murphy1 小时前
Oracle数据块8KB、OS默认认块管理4KB,是否需调整大小为一致?
linux
励志要当大牛的小白菜3 小时前
ART配对软件使用
开发语言·c++·qt·算法
mCell4 小时前
从删库到跑路?这50个Linux命令能保你职业生涯
linux·windows·macos
杰克逊的日记4 小时前
GPU运维常见问题处理
linux·运维·gpu
誰能久伴不乏5 小时前
Linux系统调用概述与实现:深入浅出的解析
linux·运维·服务器
程序员学习随笔5 小时前
Linux进程深度解析(2):fork/exec写时拷贝性能优化与exit资源回收机制(进程创建和销毁)
linux·运维·服务器
mmoyula5 小时前
【RK3568 PWM 子系统(SG90)驱动开发详解】
android·linux·驱动开发
-SGlow-5 小时前
MySQL相关概念和易错知识点(2)(表结构的操作、数据类型、约束)
linux·运维·服务器·数据库·mysql
代码改变世界ctw6 小时前
Linux内核设计与实现 - 第14章 块I/O层
linux·运维·服务器
van叶~8 小时前
Linux网络-------1.socket编程基础---(TCP-socket)
linux·网络·tcp/ip