【MA35D1】buildroot 编译使用经验

文章目录

芯片介绍

NuMicro® MA35D1系列为一颗异核同构的多核心微处理器,适用于高端 Edge IIoT Gateway。它是基于双核 64 位 Arm® Cortex-A35 内核,执行速度可达 800 MHz,并搭载一颗 180 MHz Arm Cortex-M4 内核。基于此高性能内核,MA35D1 系列有助于 Tiny AI/ML 边缘运算。

Buildroot开发Linux实践

环境搭建

物理主机或虚拟主机上安装64位桌面版Ubuntu 20.04

从下面链接处下载64位桌面版Ubuntu 20.04

https://releases.ubuntu.com/20.04/

https://releases.ubuntu.com/20.04/ubuntu-20.04.5-desktop-amd64.iso

  • 在命令行下, 执行下述命令完成编译环境搭建
bash 复制代码
sudo apt update
sudo apt install git build-essential libncurses5-dev automake

代码获取

获取Buildroot, 因为网络连接经常会断开, 这里采用循环执行方式

bash 复制代码
$ until git clone https://github.com/OpenNuvoton/MA35D1_Buildroot.git ; do echo "retry ..." ; done

编译执行步骤(仅适用于我公司产品)

  1. make clean
  2. 执行make (大概几个小时),确保新环境,首次编译一定要过,不然会有编译问题
  3. 编译完成之后,git checkout 0f7a25790637e834b61fe213c4bd297652aa5a25
    这个修改点(我公司产品基于该修改点进行开发,不使用最新的版本)
  4. git clone https://gitee.com/OpenNuvoton/MA35D1_Buildroot.git
    将buildroot名称改为MS810_Buildroot 切换buildroot版本git checkout 0f7a25790637e834b61fe213c4bd297652aa5a25
  5. git clone https://gitee.com/OpenNuvoton/MA35D1_u-boot-v2020.07.git 切换uboot版本git checkout 969f42a9f0b44cf4201831cee14df698a9cae89e
  6. git clone https://gitee.com/OpenNuvoton/MA35D1_arm-trusted-firmware-v2.3.git
    切换tf版本 git checkout b5010e117d605ef55df8736e3067786090250def
  7. 以下在MS810_Buildroot目录操作, 在MS810_Buildroot目录下创建文件vi local.mk
    添加指定:
bash 复制代码
UBOOT_OVERRIDE_SRCDIR=$(CONFIG_DIR)/../MA35D1_u-boot-v2020.07
ARM_TRUSTED_FIRMWARE_OVERRIDE_SRCDIR=$(CONFIG_DIR)/../local_repo/MA35D1_arm-trusted-firmware-v2.3

UBOOT_OVERRIDE_SRCDIR=$(CONFIG_DIR)/../MA35D1_u-boot-v2020.07
ARM_TRUSTED_FIRMWARE_OVERRIDE_SRCDIR=$(CONFIG_DIR)/../MA35D1_arm-trusted-firmware-v2.3
  1. 执行 tar -mxzvf m-add-tech2-240704.tar.gz
  2. 进入MS810_Buildroot 执行make doton_ms810v2_defconfig
  3. 执行make (大概四五十分钟)
  4. 执行tar -mxzvf m-add-tech2-240704.tar.gz
  5. make libopenssl-dirclean
    make libopenssl-rebuild /* 这一步是否为了解决bug,用于获取openssl,大多数情况不需要执行 */
bash 复制代码
make optee-os-rebuild
make uboot-rebuild
make arm-trusted-firmware-rebuildls
make linux-rebuild
make

后续有需要更改的

  1. 执行tar -mxzvf m-add-tech2-240704.tar.gz
  2. make optee-os-rebuild
  3. make uboot-rebuild
  4. make arm-trusted-firmware-rebuild
  5. make linux-rebuild (报错时,执行make linux-dirclean,在执行make linux-rebuild即可)
  6. make

输出文件目录

MS810_Buildroot/output/images/

相关推荐
zskj_zhyl32 分钟前
七彩喜智慧养老:科技向善,让“养老”变“享老”的智慧之选
大数据·人工智能·科技·物联网·机器人
铅笔侠_小龙虾1 小时前
大话IOT(5) -- 七夕篇
物联网·蓝牙通信
时序数据说5 小时前
时序数据库IoTDB的六大实用场景盘点
大数据·数据库·物联网·时序数据库·iotdb
cetcht88886 小时前
安徽某能源企业积极推进运维智能化转型,引入高压配电房机器人巡检系统
运维·人工智能·物联网·机器人·能源
CC呢9 小时前
基于单片机智能家居环境检测系统/室内环境检测设计
stm32·单片机·嵌入式硬件·物联网·智能家居
耐达讯通信技术9 小时前
耐达讯自动化RS485与Profinet双向奔赴,伺服驱动器连接“稳稳拿捏”
运维·人工智能·物联网·网络协议·自动化·信息与通信
taxunjishu10 小时前
CC-Link IE FB 转 DeviceNet 实现欧姆龙 PLC 与松下机器人在 SMT 生产线锡膏印刷环节的精准定位控制
运维·人工智能·物联网·自动化·区块链
sdyeswlw18 小时前
热烈庆祝 | 一二三物联网携这款产品入选2025年度山东省首台(套)技术装备生产企业及产品名单
物联网
耐达讯通信技术1 天前
“乾坤大挪移”:耐达讯自动化RS485转Profinet解锁HMI新乾坤
运维·网络·物联网·自动化·信息与通信
时序数据说1 天前
时序数据库IoTDB:为何成为工业数据管理新宠?
大数据·数据库·物联网·开源·时序数据库·iotdb