我从GIT下载了Rocket-chip,安装了RISC-V工具,并为Rocket核心生成了verilog文件。现在我想运行给出的汇编测试,但我没有VCS,而是我有Questasim。我修改了Makefile以使用Questasim但是需要编译的两个C ++文件SimDTM.cc和jtag_vpi.c都给出了错误。
在Questa中,我们无法编译C文件和verilog文件,而是我们需要单独编译它并生成* .so文件并在模拟时与-pli链接。
这时我正在编译jtag_vpi.c我收到错误并说错误来自' void *'到' PLI_INT32。我用下面的命令编译它,我得到的错误也粘贴在下面。
g ++ jtag_vpi.c -I $ RISCV / include -I $ MTI_HOME / questasim / include -std = c ++ 11 -W -shared -Bsymblic -fPIC
riscv / rocket-chip / csrc / jtag_vpi.c:398:2:错误:无效转换为'void *'到'PLI_INT32(*)(t_cb_data *){aka int(*)(t_cb_data *)}' [-fpermissive]
第398行:2只是函数的结尾,错误显示在每个这样的函数的末尾。
任何帮助都会有用。
提前致谢。