本项目使用 arm-none-eabi-gcc 进行编译,建议使用 MSYS2 UCRT64 进行环境搭建。
下载并安装 MSYS2。
打开 MSYS2 UCRT64 终端(也可运行安装目录下的 ucrt64.exe)。
先更新系统:
pacman -Syu如果更新提示关闭终端,按提示关闭后重新打开 MSYS2 UCRT64,再运行 pacman -Syu 完成剩余更新。更新完成后安装工具链:
pacman -S --needed mingw-w64-ucrt-x86_64-arm-none-eabi-gcc mingw-w64-ucrt-x86_64-cmake mingw-w64-ucrt-x86_64-ninja coreutilsARM GCC 包会自动安装所需的 binutils 和 newlib。项目使用 Ninja 构建,coreutils 提供 build.bat 使用的 touch 命令。
如需编译 Windows 模拟器,另外安装本机 GCC:
pacman -S --needed mingw-w64-ucrt-x86_64-gcc在环境变量Path增加以下2个路径(根据自己msys64的安装路径)
C:\msys64\ucrt64\bin
C:\msys64\usr\bin
按上述顺序添加路径。环境变量设置完成后,重新打开 CMD / PowerShell 和 IDE,使新 Path 生效。
双击运行 check_build_env.bat,或在新打开的 PowerShell 中运行 .\check_build_env.bat,自动检查所需工具并显示路径、版本和缺失项。
本项目提供 build.bat,双击运行或在终端运行即可完成编译。
编译完成后,会在build目录下生成update.bin和cipher_node_touch.hex等文件。
update.bin文件可用模拟U盘的方式升级。
cipher_node_touch.hex是固件原始hex文件,可用J-LINK等工具进行烧录。