码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • linux笔记(5):按照东山派的官方教程编译buildroot(东山哪吒,D1-H)踩坑记录


    文章目录

    • 1.编译流程
      • 1.1获取sdk源码
      • 1.2 补充:下载riscv64-glibc-gcc-thead_20200702.tar.xz
      • 1.3 补充:安装mtool工具
      • 1.4 安装必要依赖包
      • 1.5 编译sdcard 最小系统镜像
      • 1.6 烧录最小镜像系统到tf(SD)卡
        • 1.6.1 安装烧录工具
        • 1.6.2 格式化SD卡
        • 1.6.3 烧录镜像到sd卡
      • 1.7 运行系统
    • 2.问题踩坑记录
      • 问题1:make指令不执行
      • 问题2:riscv64-glibc-gcc-thead_20200702.tar.xz File format not recognized
      • 问题3: /bin/sh: 1: mcopy: not found

    整个编译的耗时主要是github的下载速度,很多依赖包都需要从github下载。
    这里我以东山派的官方教程为主,根据我的实际情况稍作调整,梳理一下编译buildroot流程。
    官方教程链接:使用buildroot-SDK编译构建系统

    1.编译流程

    1.1获取sdk源码

    有2个服务器github和gitee,我使用gitee的源。
    在这里插入图片描述
    依次执行命令:

    book@virtual-machine:~$ git clone  https://gitee.com/weidognshan/buildroot_dongshannezhastu
    book@virtual-machine:~$ cd buildroot_dshannezhastu
    book@virtual-machine:~/buildroot_dongshannezhastu$ git submodule update --init --recursive
    book@virtual-machine:~/buildroot_dongshannezhastu$ git submodule update --recursive --remote
    
    • 1
    • 2
    • 3
    • 4

    这个步骤还是比较快的,10分钟以内,取决于网速。

    1.2 补充:下载riscv64-glibc-gcc-thead_20200702.tar.xz

    这个步骤参考后面的问题2.

    1.3 补充:安装mtool工具

    这个步骤参考后面的问题3.

    1.4 安装必要依赖包

     sudo apt-get install -y  libncurses5-dev   u-boot-tools
    
    • 1

    1.5 编译sdcard 最小系统镜像

    book@virtual-machine:~/buildroot_dongshannezhastu$ cd buildroot-awol/
    book@virtual-machine:~/buildroot_dongshannezhastu/buildroot-awol$ make  BR2_EXTERNAL="../br2lvgl  ../br2qt5 ../br2nezhastu"  dongshannezhastu_sdcard_core_defconfig
    
    book@virtual-machine:~/buildroot_dongshannezhastu/buildroot-awol$ make
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述

    1.6 烧录最小镜像系统到tf(SD)卡

    原文档:东山哪吒快速启动

    1.6.1 安装烧录工具

    在这里插入图片描述

    1.6.2 格式化SD卡

    在这里插入图片描述

    1.6.3 烧录镜像到sd卡

    在这里插入图片描述

    1.7 运行系统

    把SD卡插到开发板,上电,检查一下是不是最新编译的:
    在这里插入图片描述
    我对比一下原来的一张烧录官方提供的image的文件日期:
    在这里插入图片描述

    2.问题踩坑记录

    问题1:make指令不执行

    root@SK-JNTINRTMRDZW:/home/hwd/buildroot_dongshannezhastu/buildroot-awol> make
    
    Your PATH contains spaces, TABs, and/or newline (\n) characters.
    This doesn't work. Fix you PATH.
    support/dependencies/dependencies.mk:27: recipe for target 'dependencies' failed
    make: *** [dependencies] Error 1
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    百度解决方法:《This doesn‘t work. Fix you PATH》
    在这里插入图片描述
    采用这个方法顺利解决(切换环境变量)。

    问题2:riscv64-glibc-gcc-thead_20200702.tar.xz File format not recognized

    WARNING: no hash file for riscv64-glibc-gcc-thead_20200702.tar.xz
    ....../riscv64-glibc-gcc-thead_20200702.tar.xz: File format not recognized
    tar: This does not look like a tar archive
    tar: Exiting with failure status due to previous errors
    
    • 1
    • 2
    • 3
    • 4

    去到该文件所在目录 /home/hwd/buildroot_dongshannezhastu/buildroot-awol/dl/toolchain-external-custom 看到,文件的大小只有1k,不知道是什么原因导致的。
    继续百度搜到《为全志D1/RISCV64设备移植openwrt-22.03系统》,提到要手动下载 riscv64-glibc-gcc-thead_20200702.tar.xz,提供了东山派的官方链接:《快速使用Tina-SDK 指南》:
    在这里插入图片描述
    下载完成后,发现文件名是 riscv64-glibc-gcc-thead_20200702tar.xz :
    在这里插入图片描述
    增加小数点后,不用解压,重新执行make,自动解压成功,往下进行。

    问题3: /bin/sh: 1: mcopy: not found

    在这里插入图片描述

    没有安装mtool工具:

    apt-get install mtools
    
    • 1

    重新make,终于完成:
    在这里插入图片描述

  • 相关阅读:
    电气元器件——变频器、自锁开关、电磁继电器、温度检测
    【数据结构C/C++】双向链表的增删改查
    小鼠与人类ID转换
    06 Qt自绘组件:Switch动画开关组件
    AirtestIDE编辑窗内,脚本内容消失,显示一片红色怎么办?
    jQuery常用插件整理(持续更新)
    [创业-44]:《从员工到老板,你必须经历的三次跃迁》解读
    nginx重写与防盗链
    代码之美:注释的艺术与重要性
    VS Code For Web 深入浅出 -- 进程间通信篇
  • 原文地址:https://blog.csdn.net/hwd00001/article/details/127896895
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号