【兆易创新GD32VW553开发板试用】 BSP 从 GitHub 下载与编译指南

目录

[📌 概述](#📌 概述)

[🛠 环境准备](#🛠 环境准备)

[1. 安装 Git](#1. 安装 Git)

[2. 安装 RISC‑V 工具链](#2. 安装 RISC‑V 工具链)

[3. 安装 RTT-Thread ENV](#3. 安装 RTT-Thread ENV)

[⬇️ 下载BSP步骤](#⬇️ 下载BSP步骤)

[🔹 方法一:稀疏检出(强烈推荐)](#🔹 方法一:稀疏检出(强烈推荐))

[🔸 方法二:完整克隆](#🔸 方法二:完整克隆)

[⚙️ 编译步骤](#⚙️ 编译步骤)

[1. 进入 BSP 目录](#1. 进入 BSP 目录)

[2. 安装软件包依赖](#2. 安装软件包依赖)

[3. 执行编译](#3. 执行编译)

[🪟 Windows CMD](#🪟 Windows CMD)

[🪟 Windows PowerShell](#🪟 Windows PowerShell)

[4. 清理构建产物](#4. 清理构建产物)

[📦 编译输出](#📦 编译输出)

[❓ 常见问题](#❓ 常见问题)

[Q1:scons: *** missing SConscript file](#Q1:scons: *** missing SConscript file)

[Q2:Error: the toolchain path ... is not exist](#Q2:Error: the toolchain path ... is not exist)

[Q3:pkgs --update 下载失败](#Q3:pkgs --update 下载失败)

[Q4:RAM 占用显示 100%](#Q4:RAM 占用显示 100%)

[🔗 参考链接](#🔗 参考链接)


本文详细讲解如何仅下载 RT-Thread 官方仓库中 gd32vw553h-eval 开发板支持包(BSP)及其依赖,并完成 RISC-V 工具链编译。通过稀疏检出技巧,可大幅节省磁盘空间和下载时间。


📌 概述

最近参加了RT-Thread和电子发烧友组织的评测活动,特在CSDN记录一下测试的过程。

RT-Thread 官方 GitHub 仓库包含了数百个 BSP,完整克隆体积巨大。本文针对 GD32VW553H-EVAL 这一款 RISC‑V 评估板,介绍使用 Git 稀疏检出(sparse checkout) 的方式,只拉取所需文件并顺利完成工程编译。

  • ✅ 适用对象:GD32VW553H-EVAL 开发者

  • ✅ 开发环境:Windows / Linux / macOS 均可

  • ✅ 编译器:RISC‑V GCC 工具链

  • ✅ 构建系统:SCons


🛠 环境准备

1. 安装 Git

请确保 Git 版本不低于 2.25 ,以支持完整的稀疏检出功能。

👉 Git 官网下载

2. 安装 RISC‑V 工具链

本项目需要 RISC‑V GCC 工具链,我使用的是兆易创新官方提供的。​​​​从工具链下载链接下载应用软件选项中的GD32 Embedded Builder。从压缩文件GD32EB_v1.5.8_Rel.7z中查找\GD32EB_v1.5.8_Rel\GD32EB\plugins\com.gd.tools_1.0.0.202512091458\Tools目录下查找RISC-V Embedded GCC即可,其他文件都不需要。

示例安装路径:D:\gd32\RISCVEmbeddedGCC\bin

工具链前缀:riscv-none-embed-

3. 安装 RTT-Thread ENV

GD32VW553开发板的BSP在RT-Thread Studio中无法使用,必须使用RTT-Thread ENV构建。可以从RT-Thread官方网站下载RTT-Thread ENV。如果已经安装了RT-Thread Studio,也可以直接使用RT-ThreadStudio\platform\env_released\env-new目录下的ENV环境。


⬇️ 下载BSP步骤

🔹 方法一:稀疏检出(强烈推荐)

此方法仅下载约几十 MB 的必要文件,非常适合网络或存储受限的场景。

bash 复制代码
# 1. 创建并进入工作目录
mkdir rt-thread && cd rt-thread

# 2. 初始化仓库并启用稀疏检出
git init
git remote add origin https://github.com/RT-Thread/rt-thread.git
git config core.sparseCheckout true

# 3. 配置稀疏检出规则
echo "/*" >> .git/info/sparse-checkout
echo "!/bsp/*" >> .git/info/sparse-checkout
echo "/bsp/gd32/risc-v/gd32vw553h-eval/" >> .git/info/sparse-checkout
echo "/bsp/gd32/risc-v/libraries/" >> .git/info/sparse-checkout
echo "/libcpu/" >> .git/info/sparse-checkout
echo "/src/" >> .git/info/sparse-checkout
echo "/include/" >> .git/info/sparse-checkout
echo "/components/" >> .git/info/sparse-checkout
echo "/tools/" >> .git/info/sparse-checkout

# 4. 拉取代码(以 master 分支为例)
git pull origin master

稀疏检出规则说明:

规则 作用
/* 包含根目录下所有文件
!/bsp/* 排除全部 BSP 子目录
/bsp/gd32/risc-v/gd32vw553h-eval/ 仅包含目标 BSP
/bsp/gd32/risc-v/libraries/ 包含 BSP 依赖的库文件
/libcpu/ 包含 CPU 架构相关代码
/src/ /include/ /components/ /tools/ RT‑Thread 内核与构建工具

🔸 方法二:完整克隆

如果网络和硬盘空间充足,可以直接克隆整个 RT‑Thread 仓库:

bash 复制代码
git clone https://github.com/RT-Thread/rt-thread.git

⚙️ 编译步骤

1. 进入 BSP 目录

bash 复制代码
cd rt-thread/bsp/gd32/risc-v/gd32vw553h-eval

2. 安装软件包依赖

执行以下命令自动下载 gd32-riscv-series 软件包(含 GD32VW55x 标准外设库):

bash 复制代码
pkgs --update

3. 执行编译

根据不同操作系统和习惯,选择一种方式设置工具链路径:

🪟 Windows CMD
bash 复制代码
set RTT_EXEC_PATH=D:\gd32\RISCVEmbeddedGCC\bin
scons -j%NUMBER_OF_PROCESSORS%
🪟 Windows PowerShell
bash 复制代码
$env:RTT_EXEC_PATH="D:\gd32\RISCVEmbeddedGCC\bin"
scons -j$env:NUMBER_OF_PROCESSORS

小贴士 :若工具链已安装在 rtconfig.py 的默认路径下,则无需额外设置 RTT_EXEC_PATH

4. 清理构建产物

如需重新编译,可先执行清理命令:

bash 复制代码
scons -c

📦 编译输出

构建成功后,BSP 根目录会生成以下文件:

文件 说明
rtthread.elf ELF 可执行文件(含调试信息)
rtthread.bin 裸二进制文件(用于烧录)
rtthread.map 链接映射文件(查看内存布局)

典型输出示例:

bash 复制代码
Memory region         Used Size  Region Size  %age Used
           flash:       72404 B         4 MB      1.73%
             ram:        288 KB       288 KB    100.00%
   text    data     bss     dec     hex   filename
  71156   1200    7620   79976   13868   rtthread.elf

❓ 常见问题

Q1:scons: *** missing SConscript file

原因 :稀疏检出遗漏了必需的依赖目录。
解决 :检查 .git/info/sparse-checkout 是否包含 /bsp/gd32/risc-v/libraries//libcpu/,然后执行 git read-tree -mu HEAD 更新工作区。

Q2:Error: the toolchain path ... is not exist

原因rtconfig.py 中预设的工具链路径与实际不符。
解决 :通过 RTT_EXEC_PATH 环境变量指定正确路径,或直接修改 rtconfig.py 文件中的 EXEC_PATH 变量。

Q3:pkgs --update 下载失败

原因 :网络无法正常访问 GitHub。
解决

  • 为 Git 配置代理:git config --global http.proxy http://proxy:port

  • 或手动下载 gd32-riscv-series 软件包并解压至 packages/ 目录。

Q4:RAM 占用显示 100%

原因 :默认配置中 RAM 大小为 288 KB,若启用了较多驱动或组件可能接近上限。
解决 :运行 menuconfig 裁剪不需要的功能,然后重新编译。

bash 复制代码
menuconfig

🔗 参考链接


🎉 至此,已成功拉取并编译了 GD32VW553H-EVAL 的 RT-Thread BSP,可以开始进行固件开发和调试了!

相关推荐
VBsemi-专注于MOSFET研发定制2 小时前
协作机器人螺丝锁付系统功率MOSFET选型方案——高效、精准与安全驱动系统设计指南
单片机·安全·机器人
風清掦3 小时前
【江科大STM32学习笔记-11】SPI通信协议 - 11.2 软件SPI读写W25Q64
笔记·stm32·单片机·嵌入式硬件·学习
LCG元3 小时前
STM32实战:基于STM32F103的智能饮水机温度控制
stm32·单片机·嵌入式硬件
DevilSeagull3 小时前
MySQL(1) 安装与配置
java·数据库·git·mysql·http·开源·github
kefon3 小时前
从零搭一个 AI Agent:我选了最省钱的方案
开源·github·agent
EVERSPIN3 小时前
MCU单片机FOC汽车水泵方案
单片机·嵌入式硬件·mcu·汽车·mcu单片机
yongui478344 小时前
STM32 上实现 SPI 自发自收(Loopback)
stm32·单片机·嵌入式硬件
弘毅 失败的 mian4 小时前
STM32 时钟详解
经验分享·笔记·stm32·单片机·嵌入式硬件·嵌入式
VBsemi-专注于MOSFET研发定制4 小时前
面向AI管道检测机器人的功率MOSFET选型分析——以高集成度、高可靠电源与驱动系统为例
人工智能·单片机·机器人