UART 的 RISCV C 到十六进制编译

RISCV C to hex Compilation for UART

我正在尝试将 UART 环回程序转换为相应的十六进制代码。命令

riscv32-unknown-elf-gcc test.c -march=rv32im
riscv32-unknown-elf-gcc -o test test.c

命令都报错

test.c:2:10: fatal error: rt/rt_api.h: No such file or directory
 #include <rt/rt_api.h>
          ^~~~~~~~~~~~~
compilation terminated.

使用 API 编译 c 代码的确切命令是什么,我使用的是 Pulppissimo 工具链。 我的程序是 https://github.com/pulp-platform/pulp-rt-examples/tree/master/periph/uart/loopback

您出现此错误是因为 rt/rt_api.h 不在您的 riscv gcc 搜索路径中。
要查看搜索路径中存在的文件夹,您可以在命令中添加 -v 选项或使用:

riscv32-unknown-elf-cpp -v /dev/null /dev/null

你能做的就是找到rt/rt_api.h 的位置,并将找到的路径提供给gcc。您的命令将是:

riscv32-unknown-elf-gcc -o test test.c -Ipath