本帖最后由 olsen 于 2023-11-18 15:17 编辑
一、安装虚拟机
参考B站视频:【【VMware虚拟机】安装Win10系统,附安装包秘钥/系统镜像/激活工具】
由于之前安装过虚拟机,直接安装win10系统,然后完成虚拟机win10系统安装,按照上述视频步骤完成安装以及环境设置
在安装期间顺便下载vscode和Git安装包安装地址:安信可官方 docs 上下载:https://docs.ai-thinker.com/eyes
虚拟机win10系统安装完成后界面如下图:
二、安装vscode和Git
(一)vscode安装及其插件下载
1、在安信可官方下载后解压,选好路径安装即可。安装完成后界面如下图:
2、安装插件:
Chinese:让英文界面变成中文
C/C++ :用来实现代码跳转。
Doxygen Documentation Generator :快速注释插件
vscode-icons :文件名识别 icon,可以给各种文件自动标识出图标
注:在安装中文包的时候,如果重启软件没有生效,在vscode中按快捷键Ctrl+shift+P,打开全局面板,然后找到configure display language选择中文。然后会提示重启,restart重启就好。
(二)安装Git工具
三、小安派源码工程克隆
1、克隆源码
选择克隆的位置文件,右击空白处,选择选择 Open Git bash here 即可打开安装好的 git 工具。接着输入指令(可以复制运行,Git里面右击鼠标,选择paste也就是粘贴)
- cd AiPi-Open-Kits/
- git submodule init
- git submodule update
复制代码
最后一条指令时间有点长,耐心等待就行,大概二十分钟左右。三条指令执行完成如下图:
3、拉取拉取 M61 SDK 中的子模块
(1)进入SDK中拉取子模块
分别执行以下指令:
(2)克隆适用Windows的编译工具链
就在 aithinker_Ai-M6X_SDK/ 文件夹中拉取工具链,直接适用 git 工具拉取:
- git clone https://gitee.com/bouffalolab/toolchain_gcc_t-head_windows.git
复制代码完成后如下图: 四、编译工具路径设置 上述步骤完成后,把下面三个路径加入到电脑环境变量中: - aithinker_Ai-M6X_SDK\toolchain_gcc_t-head_windows\bin
- aithinker_Ai-M6X_SDK\tools\make
- aithinker_Ai-M6X_SDK\tools\ninja
复制代码
其中需要把 aithinker_Ai-M6X_SDK\tools\make 路径上移到最高层
找到path选项并选择编辑 1、添加工具链路径 2、添加make路径 3、添加nanja路径 设置完成后如下图,重启win10虚拟机,然后验证路径是否成功设置
4、验证是否成功设置
在桌面按住 shift 键点击 鼠标右键 打开 PowerShell 。在 PowerShell 输入:
- GNU Make 4.2.1
- Built for x86_64-w64-mingw32
- Copyright (C) 1988-2016 Free Software Foundation, Inc.
- License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
- This is free software: you are free to change and redistribute it.
- There is NO WARRANTY, to the extent permitted by law.
复制代码
输入: - riscv64-unknown-elf-gcc -v
复制代码成功输出信息:
- Using built-in specs.
- COLLECT_GCC=D:\Desktop\AiPi-Open-Kits\aithinker_Ai-M6X_SDK\toolchain_gcc_t-head_windows\bin\riscv64-unknown-elf-gcc.exe
- COLLECT_LTO_WRAPPER=d:/desktop/aipi-open-kits/aithinker_ai-m6x_sdk/toolchain_gcc_t-head_windows/bin/../libexec/gcc/riscv64-unknown-elf/10.2.0/lto-wrapper.exe
- Target: riscv64-unknown-elf
- Configured with: /mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/./source/riscv/riscv-gcc/configure --target=riscv64-unknown-elf --host=i686-w64-mingw32 --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 --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 --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 --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 --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 --with-pkgversion='Xuantie-900 elf newlib gcc Toolchain V2.6.1 B-20220906' CXXFLAGS='-g -O2 -DTHEAD_VERSION_NUMBER=2.6.1 ' --enable-libgcctf --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 --disable-shared --enable-threads=posix --enable-languages=c,c++ --without-system-zlib --enable-tls --with-newlib --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 --with-native-system-header-dir=/include --disable-libmudflap --disable-libssp --disable-libquadmath --disable-libgomp --disable-nls --disable-tm-clone-registry --src=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/./source/riscv/riscv-gcc --enable-multilib --with-abi=lp64d --with-arch=rv64gcxthead 'CFLAGS_FOR_TARGET=-Os -mcmodel=medany' 'CXXFLAGS_FOR_TARGET=-Os -mcmodel=medany'
- Thread model: posix
- Supported LTO compression algorithms: zlib zstd
- gcc version 10.2.0 (Xuantie-900 elf newlib gcc Toolchain V2.6.1 B-20220906)
复制代码
检验成功!!
五、编译天气站程序 1、在 VScode 打开小安派仓库源码 在 VScode 打开 AiPi-Open-Kits 文件夹 2、编译 AiPi-Eyes_weather AiPi-Eyes_weather 是天气站的源码,选中该文件之后,鼠标右键 选择 在集成终端中打开,然后在终端输入: 然后开始编译源码,最后结果如下:
最后出现Built target combine,但是有“找不到文件”的error
基本按照上面的步骤来没出什么问题,一点小问题网上也可以找到解决办法。最近在准备考试,等寒假了回去一定好好玩一玩,期待园长赠送板子(*^▽^*)
帖子好像会自动删东西,提交了好几次都给我有删减……我重写了一份放附件里了,请园长大大查看 |