RISCV testbench交叉编译
riscv64-linux-gnu工具
这里大家在对自己的RISCV小核进行测试的时候可以使用这个交叉编译工具进行testbench编写。为什么说是对小项目测试呢,因为大项目不可能没用过这个东西,所以咱们这里面对的还是RISCV入门的选手们。
gcc
关于GCC想必大家早已经是耳熟能详,那么我们这里选用的是使用在本机的架构上安装别的架构的gcc工具实现交叉编译
链接 -static
那么这里在我们没有指定-static的时候那么gcc默认是动态链接,这样可以省略很多的计算机虚拟存储,但是我们要在我们自己的裸机上跑的话就必须需要静态链接一下,关于静态链接其实就是计算机在执行一条程序的时候其实是做了很多的事情的所以这个之后我们对其进行静态链接吧他需要的库核函数全都打包在一起以方便我们在我们的项目上运行,但是这个时候其实更多的还是不能运行的,因为你的项目可能这个时候把那个没有输入输出,所以你需要一些不需要输入输出的程序去运行。好了。
objdump
那么objdump是个反汇编指令
// objdump
riscv64-linux-gnu-objdump -d [可执行编译文件] | vim -
然后介绍一下我演示用的是windows的Ubuntu18的linux扩展,这里面有一条命令可以打开内核本机所在地址用来核windows交互,所以你的编译可以核windows互传。
总结
好的我是木林学长技术水平有限,如有错误欢迎批评指正:779163410@qq.com(本人会在闲暇时在嵌入式,集成电路,计算机,物联网互联网方面发布自己经验与心得,喜欢可以关注。谢谢。)
我这里有一个群聊大家可以加进去有问题可以交流:366475079