我目前正在尝试部署 应用程序(简单的c程序)到 Zynq ZedBoard 。 我按照Rocket Chip on Zynq FPGAs github页面生成了所有必要的文件,将它们放在SD卡上并启动PetaLinux 。
在本教程中,启动后可以执行预打包的 hello 应用程序
root@zynq:~# ./fesvr-zynq pk hello
hello!
我成功地达到了这一点。但是,我想知道如何将我自己的c代码部署到可执行文件中,该文件系统将出现在内部文件系统中,如上面的 hello
答案 0 :(得分:0)
感谢@ user3528438给了我正确的提示。我写这篇文章以供将来参考。
我能够通过执行以下操作来部署和执行我自己的C应用程序:
写我自己的 C代码我想在Rocket Chip上执行。
#include <stdio.h>
int main(void) {
printf("Hello Rocket!\n");
return 0;
}
编译 riscv架构的代码和生成可执行文件。 这当然需要安装riscv工具链!
$ riscv64-unknown-elf-gcc -o myhello hello.c
复制您在sd卡上生成的myhello可执行文件 ,您在ZedBoard中插入了
。打开ZedBoard并登录。
安装SD卡,以便能够访问您的myhello可执行文件。
$ mkdir /sdcard
$ mount /dev/mmcblk0p1 /sdcard
切换到/ sdcard目录并将可执行文件复制到/ home / root目录。 (这是您找到标准hello可执行文件的地方)
$ cd ../../sdcard
$ cp myhello /home/root
切换回/ home / root目录并通过前端服务器在Rocket Chip上执行myhello文件!
$ ./fesvr-zynq pk myhello
这会将预期输出打印到控制台。
Hello Rocket!