QT6源码 在 ubuntu x86_64 编译 linux ARM64 版本[虚拟镜像版]

先说结论:失败,但如果项目小的话,这也是一种方法提供参考。

 背景

参考前一篇 Qt6 交叉编译笔记-CSDN博客

已经折腾了一周时间,直接在宿主系统编译行不通,退而求其次,在虚拟镜像中编译,虽然慢点,好歹是个方法。人已经麻了...

物理机

系统:ubuntu 24.06 x84_64

内存:32G  swap 8G          完全不够用,下午6点到第二天早上7点就爆掉不动,系统无响应,进度才到30%

内存:40G  swap 32G   

硬盘:SSD 120G

CPU:I7-7770

目标环境

系统:debain  (12.6的版本,官方支持Debian 11.6 on ARM)

架构:ARM64

重点就是在ubuntu x86系统弄个arm64的虚拟环境,在虚拟环境中编译

        备注:虽然ubuntu有现成的arm64虚拟镜像【参考】,但是为了不想折腾,就按官方弄个debain的虚拟镜像,因为之前在麒麟的ARM64上吃过亏,莫名奇妙的问题

在ubuntu 系统中构建debain的虚拟镜像参考:

Lichee 使用debain - 三七鸽 - 博客园 (cnblogs.com)

官方文档

有些不一致的,再整理记录一下

1 准备环境

sudo apt install qemu-user-static -y
sudo apt install debootstrap -y
sudo apt install debain-archive-keyring

2 新建rootfs目录存放debain

mkdir /path/to/rootfs

 
3 使用debootstrap下载

debootstrap --foreign --verbose --arch=arm64  stable rootfs https://mirrors.tuna.tsinghua.edu.cn/debian/ 

4 添加qemu-arm-static工具到目录下

sudo cp /usr/bin/qemu-arm-static /path/to/rootfs/usr/bin/
sudo chmod +x /path/to/rootfs/usr/bin/qemu-arm-static

5 切换到虚拟镜像

sudo chroot /path/to/rootfs

6 解压包

debootstrap/debootstrap --second-stage --verbose

7 更新系统

apt update
apt upgrade

剩下的就参考 

linux arm64 Qt6/PySide6 WebEngine 支持 webrtc -h264

等待吧,一切都交给时间

--------------------2024-09-04

放弃了,内存调整到40G,Swap给到50G

configure 生成,CPU完全满载运行了3天才完成,内存和swap也爆满,期间重启了几次

后面ninja /cmake 时,CPU占用率较低,10%左右,内存和swap 完全爆掉导致ccplus1中断失败

在虚拟镜像中编译效率非常低,不知道是不是内存不够大的原因导致结果失败。不再折腾了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值