linux笔记(5):按照东山派的官方教程编译buildroot(东山哪吒,D1-H)踩坑记录

整个编译的耗时主要是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

这个步骤还是比较快的,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.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.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

百度解决方法:《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

去到该文件所在目录 /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

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

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当你输入 arm-buildroot-linux-gnueabihf- 时出现 "未找到命令" 的错误,这通常是因为缺少相应的编译器。根据引用和引用的内容,可能有以下两种解决方法: 1. 在终端中输入 make 命令时出现错误 "make: arm-linux-gnueabihf-gcc: Command not found",这说明缺少 arm-linux-gnueabihf-gcc 编译器。你可以使用引用中提到的方法,在编译系统时使用 arm-linux-gnueabihf-gcc-7 命令替代 arm-linux-gnueabihf-gcc 命令。这样做可以避免 sudo 编译时出现找不到 arm-linux-gnueabihf-gcc 的问题。 2. 如果在输入 arm-linux-gnueabihf-gcc -v 命令时出现错误 "bash: /home/l000/tools/gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux/bin/arm-linux-gnueabihf-gcc: No such file or directory",说明 arm-linux-gnueabihf-gcc 编译器的路径不正确。你可以检查一下编译器的路径是否正确,并确保该路径下存在 arm-linux-gnueabihf-gcc 编译器的可执行文件。 综上所述,你可以尝试使用 arm-linux-gnueabihf-gcc-7 替代 arm-linux-gnueabihf-gcc,并确保编译器的路径正确。这样应该能够解决 "arm-buildroot-linux-gnueabihf-:未找到命令" 的问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [make:arm-linux-gnueabihf-gcc: Command not found](https://blog.csdn.net/whocarea/article/details/103365339)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [sudo arm-linux-gnueabihf-gcc:Command not found 原因及解决办法](https://blog.csdn.net/qq_43257914/article/details/127073002)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值