# 搭建环境
# 获取工具链
我们已为开发者准备好工具链:
# 配置工具链
# MacOSX / Ubuntu
首先,将工具链解压,然后,设置几个环境变量:
假设解压路径为: /home/lo
export MADOS_TOOLS_VER=13.1.0
export MADOS_TOOLS_HOME=/home/lo/mados-tools/tools
export MADOS_TOOLS_GCC=$MADOS_TOOLS_HOME/arm-none-eabi-$MADOS_TOOLS_VER
export MADOS_TOOLS_OPENOCD=$MADOS_TOOLS_HOME/openocd
export MADOS_TOOLS_BIN=$MADOS_TOOLS_GCC/bin:$MADOS_TOOLS_OPENOCD/bin
export PATH=$MADOS_TOOLS_BIN:$PATH
1
2
3
4
5
6
2
3
4
5
6
将以上内容加入到用户配置文件末尾
平台 | 用户配置文件 |
---|---|
MacOSX | ~/.zprofile |
Ubuntu | ~/.bashrc |
执行以下命令:
source ~/.zprofile # MacOSX
1
source ~/.bashrc # Ubuntu
1
# Windows
我们提供基于 WSL2 + Ubuntu 的集成开发环境 (SDK),以减少开发者踩坑周期。
# 在Windows中开启 WSL2 支持
- "硬件虚拟化":
根据主板手册在 BIOS 中设置 - "程序与功能":
- "启用或关闭 Windows 功能":
- "适用于 Windows 的 Linux 子系统 & 虚拟机平台"
# WSL2 更新&设置
wsl --update
wsl --set-default-version 2
1
2
2
# 导入开发环境
- 新建文件夹,用作存放导入的开发环境。
如: D:\Games\wsl-ubuntu-22.04 - 导入
wsl --import Ubuntu-22.04 D:\Games\wsl-ubuntu-22.04 mados-tools-13.1.0-WSL2.tar
1
# usbipd-win 安装
# (可选)高级用户
我们也提供独立工具链,供高级用户自行配置使用。
13.1.0 | Windows (x64) (opens new window) |
12.3.0 | Windows (x64) (opens new window) |
12.2.0 | Windows (x64) (opens new window) |
# 安装代码编辑器
推荐使用Visual Studio Code (opens new window)作代码编辑工具。
TIP
- 下载缓慢看这里 (opens new window)
- 设置环境变量后,需重启 VSCode,以使其加载新环境变量。
# 安装 VSCode 扩展
扩展名 | 发布者名称 | *Windows |
---|---|---|
AutoLaunch | philfontaine | Ubuntu |
C/C++ | Microsoft | Ubuntu |
Lua | sumneko | Ubuntu |
Arm Assembly | dan-c-underwood | Ubuntu |
Cortex-Debug | marus25 | Ubuntu |
Remote - WSL | Microsoft | Windows |
TIP
- Windows 平台,插件安装需要区分主/子系统,详见下文。
- MadOS 支持 Lua,详见后续章节。
# Windows
WSL2 + Ubuntu 提供了一个运行在 Windows 内部的子系统(即,Ubuntu),编译与调试都在 Ubuntu 中完成。 默认情况下,VSCode 与 调试器 都是与 Windows 相关联,而非 Ubuntu ,因此,需要做一些额外设置,改变关联。
TIP
相比 MinGW / CygWin,WSL2 提供非"转译"的 Linux 内核,即,运行效率更高。
# 首次启动 Ubuntu & VSCode
wsl -u lo
code .
1
2
2
# 再次启动 Ubuntu & VSCode
- 打开 VSCode & 连接至 Ubuntu
# 将调试器关联至 Ubuntu
usbipd wsl list
usbipd wsl attach --busid <busid>
1
2
2
TIP
每次 重接调试器 或 重启 Ubuntu 都需手动将 调试器 关联至 Ubuntu
# 验证
# GCC
执行
arm-none-eabi-gcc -v
1
输出版本信息
gcc version 13.1.0 (GNU Tools for MadOS [ARM][20230428][gcc-13.1.0][Newlib])
1
# GDB
执行
arm-none-eabi-gdb -v
1
输出版本信息
GNU gdb (GNU Tools for MadOS [ARM][20230428][gdb-13.1]) 13.1
1
# OpenOCD
执行
openocd -v
1
输出版本信息
xPack Open On-Chip Debugger 0.12.0-01004-g9ea7f3d64-dirty (2023-01-30-17:03)
1
TIP
MacOSX平台需要赋予依赖动态库权限:
sudo xattr -r -d com.apple.quarantine $MADOS_TOOLS_HOME/openocd/libexec
1