【板子申请】Ai-M61-32S开发环境搭建好咯 Win10

[复制链接]
查看823 | 回复3 | 2023-11-15 16:32:43 | 显示全部楼层 |阅读模式
本帖最后由 HJ_Guang 于 2023-11-15 16:32 编辑


本文参考:
零基础搭建小安派Windows 开发环境
(出处: 物联网开发者社区-安信可论坛)

现有环境:
VS code 代码编辑器
Git工具

环境搭建过程
1.克隆小安派源码工程——此步骤依赖Git工具
在想要存放源码工程的位置(建议最好不要有中文路径)点击鼠标右键选择Open Gitbash here即可打开Git工具。如下图所示。
01鼠标右键图示.jpg
接着输入指令(可以复制运行):
  1. git clone <a href="https://gitee.com/Ai-Thinker-Open/AiPi-Open-Kits.git"><span style="color: windowtext; text-decoration-line: none;">https://gitee.com/Ai-Thinker-Open/AiPi-Open-Kits.git</span></a>
复制代码

如下图所示为右键粘贴所在位置,也可使用快捷键“shift+Ins”进行粘贴
02.png
开始克隆小安派的SDK。
03.png
等待进度到达100%即克隆完成
04.png
等到显示“$”可以进行下一步。

在拉取SDK之前,需要修改一下子模块的来源,不然可能会拉取失败。

进入AiPi-Open-Kits 中,用文本打开.gitmodules 文件url 参数中的 github.com 改成gitee.com。如下图所示。
05.png

06.png
3.子模块拉取
然后在git 工具中分别执行下列代码:(一行一行执行,执行完一行等待出现“$”)
  1. cd AiPi-Open-Kits/
复制代码
  1. git submodule init
复制代码

  1. git submodule update
复制代码

07.png
在第三步指令输入后的等待时间可能会稍微较长,同样需要等待“$”出现才能进行下一步

2.接下来设置环境变量
需要将以下路径都设置进环境变量中(以下路径为工程内路径)(设置此步骤需要先确认以下三个路径是否存在,若不存在说明上一步拉取子模块失败,需要重新进行上一步)
aithinker_Ai-M6X_SDK\toolchain_gcc_t-head_windows\bin
aithinker_Ai-M6X_SDK\tools\make
aithinker_Ai-M6X_SDK\tools\ninja

设置过程如下:

打开编辑系统环境变量(方法不止一种,这里采用win+s打字输入“环境变量”,搜索出对应结果回车)
08.png
然后会弹出下图所示界面,点击环境变量
09.png
选择下图中的系统变量中的Path变量选择编辑
10.png
然后选择新建,粘贴进上文中的3个相对应路径即可,如下图所示:

(需要是文件夹完整路径,从盘符开头见下下图)
11.png
4.验证是否成功设置
Win+R快捷键输入cmd后回车进入控制台
输入
  1. make -v
复制代码

成功则输出
  1. <p class="MsoNormal"><span lang="EN-US">Built for x86_64-w64-mingw32<o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US">Copyright (C) 1988-2016 Free Software
  2. Foundation, Inc.<o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US">License GPLv3+: GNU GPL version 3 or later
  3. <http://gnu.org/licenses/gpl.html><o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US">This is free software: you are free to
  4. change and redistribute it.<o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US">There is NO WARRANTY, to the extent
  5. permitted by law.</span></p>
复制代码


输入
  1. riscv64-unknown-elf-gcc -v
复制代码

成功则输出
  1. <p class="MsoNormal"><span lang="EN-US">Using built-in specs.<o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US">COLLECT_GCC=riscv64-unknown-elf-gcc<o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US">COLLECT_LTO_WRAPPER=c:/users/hj-guang/</span>成品<span lang="EN-US">/git/aipi-open-kits/aithinker_ai-m6x_sdk/toolchain_gcc_t-head_windows/bin/../libexec/gcc/riscv64-unknown-elf/10.2.0/lto-wrapper.exe<o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US">Target: riscv64-unknown-elf<o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US">Configured with:
  2. /mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/./source/riscv/riscv-gcc/configure
  3. --target=riscv64-unknown-elf --host=i686-w64-mingw32
  4. --with-gmp=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/build-Xuantie-900-gcc-elf-newlib-mingw-V2.6.1/lib-for-gcc-mingw
  5. --with-mpfr=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/build-Xuantie-900-gcc-elf-newlib-mingw-V2.6.1/lib-for-gcc-mingw
  6. --with-mpc=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/build-Xuantie-900-gcc-elf-newlib-mingw-V2.6.1/lib-for-gcc-mingw
  7. --with-libexpat-prefix=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/build-Xuantie-900-gcc-elf-newlib-mingw-V2.6.1/lib-for-gcc-mingw
  8. --with-libmpfr-prefix=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/build-Xuantie-900-gcc-elf-newlib-mingw-V2.6.1/lib-for-gcc-mingw
  9. --with-pkgversion='Xuantie-900 elf newlib gcc Toolchain V2.6.1 B-20220906'
  10. CXXFLAGS='-g -O2 -DTHEAD_VERSION_NUMBER=2.6.1 ' --enable-libgcctf
  11. --prefix=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/Xuantie-900-gcc-elf-newlib-mingw-V2.6.1
  12. --disable-shared --enable-threads=posix --enable-languages=c,c++
  13. --without-system-zlib --enable-tls --with-newlib
  14. --with-sysroot=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/Xuantie-900-gcc-elf-newlib-mingw-V2.6.1/riscv64-unknown-elf
  15. --with-native-system-header-dir=/include --disable-libmudflap --disable-libssp
  16. --disable-libquadmath --disable-libgomp --disable-nls
  17. --disable-tm-clone-registry --src=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/./source/riscv/riscv-gcc
  18. --enable-multilib --with-abi=lp64d --with-arch=rv64gcxthead
  19. 'CFLAGS_FOR_TARGET=-Os   -mcmodel=medany'
  20. 'CXXFLAGS_FOR_TARGET=-Os  
  21. -mcmodel=medany'<o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US">Thread model: posix<o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US">Supported LTO compression algorithms: zlib
  22. zstd<o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US">gcc version 10.2.0 (Xuantie-900 elf newlib
  23. gcc Toolchain V2.6.1 B-20220906)</span></p>
复制代码


验证成功图如下:
12.png

编译源码

打开vscode软件,选择“文件-打开文件夹”
13.png
打开从git拉取的“AiPi-Open-Kits”文件夹,如图所示
14.png
随意选择一个文件夹(项目),右键选择“在集成终端中打开”
15.png
在下图中此处输入”make”,进行编译程序
16.png
此时显示如下问题:“系统找不到指定的文件”
17.png
解决这个问题我们首先把中文路径去除(将该工程源码剪切至纯英文路径,并修改系统变量,然后重新用vscode打开工程……所以最开始不要放在中文路径中)。
若此时还是出现这个问题,如下图。
18.png
那就需要找到下图文件AiPi-Open-Kits\aithinker_Ai-M6X_SDK\   目录下的    project.build    并用文本文档打开。
19.png
打开之后找到如下图所示的三行文字,在其前面加入“#”号,保存退出。
20.png
如下图,重新输入make,此时我们发现工程正常编译了
21.png



大功告成!

回复

使用道具 举报

HJ_Guang | 2023-11-15 16:32:44 | 显示全部楼层
回复

使用道具 举报

WangChong | 2023-11-15 16:40:11 | 显示全部楼层
插眼给园长看(3)
回复 支持 反对

使用道具 举报

lovzx | 2023-11-15 16:47:05 来自手机 | 显示全部楼层
插个眼给狗哥看
回复 支持 反对

使用道具 举报

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

本版积分规则