【首发?】Mac M1 编译原生toolchain以及配置烧录支持

[复制链接]
查看1999 | 回复14 | 2023-11-20 22:46:26 | 显示全部楼层 |阅读模式
本帖最后由 oxromantic 于 2023-11-22 23:54 编辑

(说明:按流程Intel Mac应该同理,因为烧录的binary是x86架构)
前提:
你已经按Linux的新手教程准备好了AiPi-Open-Kits目录,步骤到 ". install.sh", 不要执行 ". export.sh",
游客,如果您要查看本帖隐藏内容请回复


首先按照Mac toolchain编译教程编译好toolchain,需要拉取7-8G的代码,编译比较快,总共耗时大概数小时,教程地址:

  1. https://github.com/p4ddy1/pine_ox64/blob/main/build_toolchain_macos.md
复制代码
编译完成后,你将得到 /opt/riscv-toolchain/xuantie 下 890MB左右的toolchain,此时还不能直接编译,切换到 "AiPi-Open-Kits" 目录下

修改1:
  1. # 文件 aithinker_Ai-M6X_SDK/cmake/bflb_flash.cmake 替换ubuntu为macos
复制代码
if(MINGW OR CYGWIN OR WIN32)
set(TOOL_SUFFIX ".exe")
elseif(UNIX)
set(TOOL_SUFFIX "-macos")
endif()

修改2:
  1. # aithinker_Ai-M6X_SDK/export.sh 全部替换
复制代码
export PATH=$PATH:/opt/riscv-toolchain/xuantie/bin
export PATH=$(brew --prefix)/opt/coreutils/libexec/gnubinPATH

export PATH=$PATHPWD/toolchain/bin
echo $PATH
riscv64-unknown-elf-gcc -v
chmod 755 $PWD/tools/cmake/bin/cmake
chmod 755 $PWD/tools/bflb_tools/bouffalo_flash_cube/BLFlashCommand-macos
chmod 755 $PWD/tools/bflb_tools/bflb_fw_post_proc/bflb_fw_post_proc-macos

笑脸表情是 : $ 去掉空格
最后,执行 ". export.sh" 你的编译环境已经就绪,此时切换到helloworld, 执行下面命令即可编译&烧录
  1. make flash COMX=/dev/tty.usbserial-2130
复制代码

11.22 更新:
上传了预编译版本,因为整体超过100M不支持上传,拆分2个包,解压后自行合并,目录结构参考
bflb_flash.cmake  bin  export.sh  include  lib        libexec  riscv64-unknown-elf  share

需要额外编辑的2个文件(bflb_flash.cmake 、export.sh)也放在这个包里,自行替换AiPi-Open-Kits里的同名文件即可

这个toolchain默认需要放在 /opt/riscv-toolchain/xuantie 下(因为export.sh里是指向这个路径),理论也可以替换AiPi-Open-Kits/aithinker_Ai-M6X_SDK/toolchain 目录,这样export.sh 手工编辑时就不用修改PATH相关信息,自行决定

https://wwzb.lanzoue.com/b058nazcj
密码:
游客,如果您要查看本帖隐藏内容请回复




本帖被以下淘专辑推荐:

回复

使用道具 举报

爱笑 | 2023-11-21 13:55:41 | 显示全部楼层
优秀~
用心做好保姆工作
回复

使用道具 举报

bzhou830 | 2023-11-21 17:40:40 | 显示全部楼层
优秀~
选择去发光,而不是被照亮
回复

使用道具 举报

致閑 | 2023-11-21 17:56:15 | 显示全部楼层
大佬牛逼
回复

使用道具 举报

linyuuki | 2023-11-22 16:00:22 来自手机 | 显示全部楼层
本帖最后由 linyuuki 于 2023-11-22 16:10 编辑

秀儿,编译结果发蓝奏云,懒得编译
回复 支持 反对

使用道具 举报

Mr.Tail | 2023-11-22 16:25:45 | 显示全部楼层
大佬牛逼!
回复

使用道具 举报

爱思 | 2023-11-22 16:32:04 | 显示全部楼层
本帖最后由 爱思 于 2023-11-22 18:59 编辑

???大佬,你确定编译出来了么?编译riscv64-unknown-elf-gcc报错啊
回复 支持 反对

使用道具 举报

oxromantic | 2023-11-22 20:01:44 | 显示全部楼层
爱思 发表于 2023-11-22 16:32
???大佬,你确定编译出来了么?编译riscv64-unknown-elf-gcc报错啊

什么错误?
回复 支持 反对

使用道具 举报

oxromantic | 2023-11-22 20:04:12 | 显示全部楼层
linyuuki 发表于 2023-11-22 16:00
秀儿,编译结果发蓝奏云,懒得编译

等我脱敏重新编译一份吧
回复 支持 反对

使用道具 举报

爱思 | 2023-11-22 22:26:47 | 显示全部楼层
本帖最后由 爱思 于 2023-11-22 22:30 编辑

编译toolchain报错日志很长,我截取最后的几行,大佬看看:

/bin/sh: line 4: riscv64-unknown-elf-ar: command not found
make[6]: *** [Makefile:1034: libc.a] Error 127
make[6]: Leaving directory '/Users/zx/AiPi/xuantie-gnu-toolchain/build-newlib/riscv64-unknown-elf/newlib/libc'
make[5]: *** [Makefile:683: all-recursive] Error 1
make[5]: Leaving directory '/Users/zx/AiPi/xuantie-gnu-toolchain/build-newlib/riscv64-unknown-elf/newlib/libc'
make[4]: *** [Makefile:641: all-recursive] Error 1
make[4]: Leaving directory '/Users/zx/AiPi/xuantie-gnu-toolchain/build-newlib/riscv64-unknown-elf/newlib'
make[3]: *** [Makefile:452: all] Error 2
make[3]: Leaving directory '/Users/zx/AiPi/xuantie-gnu-toolchain/build-newlib/riscv64-unknown-elf/newlib'
make[2]: *** [Makefile:8521: all-target-newlib] Error 2
make[2]: Leaving directory '/Users/zx/AiPi/xuantie-gnu-toolchain/build-newlib'
make[1]: *** [Makefile:908: all] Error 2
make[1]: Leaving directory '/Users/zx/AiPi/xuantie-gnu-toolchain/build-newlib'
make: *** [Makefile:587: stamps/build-newlib] Error 2

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则