当前位置:网站首页>自己动手写RISC-V的C编译器-00环境配置
自己动手写RISC-V的C编译器-00环境配置
2022-08-11 05:29:00 【YOUNIKOJIAO】
自己动手写RISC-V的C编译器-00环境配置
一直都想写一个编译器,苦于
懒没有时间。正好看到PLCT实验室的大佬开了一个编译器课程。这个假期,将跟着这个课程实现一个完整的RISC-V的编译器
开发环境
操作系统:Ubantu 20.04
,这里为了简单起见不涉及编译直接使用老师在群里发的可执行文件包。注意这个可执行文件必须运行在Ubantu 20.04
中。不然在使用qemu
的时候会因为libc.so.6
的版本问题导致运行失败。
实验环境: 以下连接打包了RISC-V实验环境用到的各种可执行文件,包括riscv-gnu-toolchain、spike、pk、qemu、llvm等程序。可执行文件下载地址
配置环境变量
打开~/.bashrc
vim ~/.bashrc
在末尾添加行
export PATH=$HOME/ws/rvcc-sysroot/usr/bin:$PATH
其中ws
是我自定的工作文件,你也可以自己定义;rvcc-sysroot
这个文件是从压缩包解压出来的文件改的名字,因为原来的名字太长了。
最后使环境生效
source .bashrc
如果输入命令的时候发现找不到,重启一下就好了。
交叉编译的概念
由于开发环境使X86架构的,但是测试程序需要运行RISC-V架构的汇编程序,所以就需要用到交叉编译器。在X86的电脑上编译出可运行在RISC-V计算机上的可执行文件。由于没有开发板,需用使用qemu
来模拟RISC-V环境。
边栏推荐
- Promise.race learning (judging the fastest execution of multiple promise objects)
- Promise 中状态改变和回调执行先后顺序 和promise多次回调
- vim 编辑解决中文乱码问题
- js 学习进阶(Dom部分 pink老师教学笔记)
- Vscode remote connection server terminal zsh+Oh-my-zsh + Powerlevel10 + Autosuggestions + Autojump + Syntax-highlighting
- 哥德巴赫猜想与整数环
- Jetpack use exception problem collection
- Day 79
- The role of the port
- Getting Started with JNI
猜你喜欢
随机推荐
编译异常解决
openlayer中实现截图框截图的功能
gerrit 配置SSH Key和账号、邮箱信息
USB中用NRZI来编码数据
Day 75
活动预告 | 4月23日,多场OpenMLDB精彩分享来袭,不负周末好时光
vim 编辑解决中文乱码问题
贡献者任务第三期精彩来袭
jdbc接口文档参考,jdbc接口方法逻辑探究
Getting Started with JNI
mk文件介绍
JS进阶网页特效(pink老师笔记)
JVM tuning and finishing
Tinker接入全流程---编译篇
The official website of OpenMLDB is upgraded, and the mysterious contributor map will take you to advance quickly
Vscode远程连接服务器终端zsh+Oh-my-zsh + Powerlevel10 + Autosuggestions + Autojump + Syntax-highlighting
SearchGuard配置
深度学习Matlab工具箱代码注释
开源之夏 2022 火热来袭 | 欢迎报名 OpenMLDB 社区项目~
js写四位随机数能有多少种可能性?并列出所有可能性