riscv32{i,im,ima,imc,imac,imafc}-unknown-none-elf
层级:2
针对具有 RV32I、RV32IM、RV32IMC、RV32IMAFC 和 RV32IMAC ISA 的 RISC-V CPU 的裸机目标。
层级:3
针对具有 RV32IMA ISA 的 RISC-V CPU 的裸机目标。
目标维护者
- Rust 嵌入式工作组,RISC-V 团队
要求
该目标是交叉编译的,并使用静态链接。不需要外部工具链,默认的 rust-lld
链接器可以工作,但您必须指定一个链接器脚本。 riscv-rt
crate 提供了一个合适的链接器脚本。 riscv-rust-quickstart
仓库给出了一个 RV32 项目的示例。
构建目标
该目标包含在 Rust 中,可以通过 rustup
安装。
测试
这是一个交叉编译的 no-std
目标,必须在模拟器中运行,或者通过编程将其写入合适的硬件。无法在此目标上运行 Rust 测试套件。
交叉编译工具链和 C 代码
该目标支持 C 代码。如果与 C 或 C++ 互联,您可能需要使用 riscv64-unknown-elf-gcc
作为链接器,而不是 rust-lld
。