M1-ARM64-Debian11/UOS-v20 编译工具链已准备好, 伙计们开干吧!

本工具链在虚拟机Parallels - Debian 11.7/UOS-v20 - ARM64 版 系统下编译/验证通过

已存放百度网盘, 包含打包后的img镜像文件
链接: https://pan.baidu.com/s/1K9RVYnv8Wc3Ln8yc0oxwdg 提取码: 9255

  1. Debian 11.7 ARM64 版本系统下载,也可在UOS-v20专业版ARM64上

Index of /cdimage/archive/11.7.0/arm64/iso-cd (accum.se)

  1. 下载 duo-buildroot-sdk 并同步源码

安装duo-buildroot-sdk的依赖libssl-dev时可能会提示版本冲突提示:
下列软件包有未满足的依赖关系:
libssl-dev : 依赖: libssl1.1 (= 1.1.1n-0+deb11u4) 但是 1.1.1n-0+deb11u5 正要被安装
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。

使用aptitude来降级解决
sudo apt install aptitude
sudo aptitude install libssl-dev
选择no,yes,yes即可

  1. 从网盘下载 ARM64版本的工具链

下载 host-tools.tar.xz 后释放到host-tools下

  1. 修改build/milkvsetup.sh中的编译工具配置
CROSS_COMPILE_PATH_64_NONOS_RISCV64="$TOOLCHAIN_PATH"/gcc/riscv64-elf-arm64
CROSS_COMPILE_PATH_GLIBC_RISCV64="$TOOLCHAIN_PATH"/gcc/riscv64-linux-arm64
CROSS_COMPILE_PATH_MUSL_RISCV64="$TOOLCHAIN_PATH"/gcc/riscv64-linux-musl-arm64
  1. 替换文件
    下载 build-tools-patch.tar.xz 做如下操作:

将 gen_init_cpio 复制到 duo-buildroot-sdk/build/tools/common/
将 mkimage 复制到 duo-buildroot-sdk/build/tools/common/prebuild

debian 下需要设置mkdosfs搜寻路径
export PATH=/media/yxw/milkv/duo-buildroot-sdk/ramdisk/rootfs/common_arm64/sbin:$PATH

  1. CMake ARM64 下载安装
wget https://github.com/Kitware/CMake/releases/download/v3.26.4/cmake-3.26.4-linux-aarch64.sh
chmod +x cmake-3.26.4-linux-aarch64.sh
sudo ./cmake-3.26.4-linux-aarch64.sh --skip-license --prefix=/usr/local/
  1. 编译
    最后运行build_milkv.sh开始编译

  2. Flash 工具ARM64版本下载与安装

wget https://github.com/futurejones/balena-etcher-arm/releases/download/v1.7.9/balena-etcher-electron_1.7.9+5945ab1f_arm64.deb
sudo dpkg -i balena-etcher-electron_1.7.9+5945ab1f_arm64.deb

如果安装时提示

dpkg: 依赖关系问题使得 balena-etcher-electron 的配置工作不能继续:
 balena-etcher-electron 依赖于 gconf2;然而:
  未安装软件包 gconf2。
 balena-etcher-electron 依赖于 gconf-service;然而:
  未安装软件包 gconf-service。
 balena-etcher-electron 依赖于 libgconf-2-4;然而:
  未安装软件包 libgconf-2-4。

则需要执行下面命令:

sudo apt install gconf2
sudo apt --fix-broken install

如果顺利的话就可以看到启动图标了

如果有问题,可以留言

1 Like

感谢大佬,已经在3588上编起来了,成功出固件了,就是有亿点点慢