当前位置:网站首页>自己动手写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环境。
边栏推荐
- 8-byte standard request parsing during USB enumeration
- The official website of OpenMLDB is upgraded, and the mysterious contributor map will take you to advance quickly
- helm安装
- 2021-09-11 C language variables and memory allocation
- Node stepping on the pit 80 port is occupied
- Promise.race learning (judging the fastest execution of multiple promise objects)
- JVM tuning and finishing
- Day 77
- js学习进阶BOM部分(pink老师笔记)
- 活动预告 | 4月23日,多场OpenMLDB精彩分享来袭,不负周末好时光
猜你喜欢
openlayer中实现截图框截图的功能
OpenMLDB Pulsar Connector: Efficiently connect real-time data to feature engineering
Getting Started with JNI
Jetpack's dataBinding
Day 79
JVM tuning and finishing
[Meetup]OpenMLDBxDolphinScheduler 链接特征工程与调度环节,打造端到端MLOps工作流
OpenMLDB官网升级,神秘贡献者地图带你快速进阶
Use the adb command to manage applications
The whole process of Tinker access --- Compilation
随机推荐
gerrit configure SSH Key and account, email information
vim 编辑器使用学习
OpenMLDB v0.5.0 发布 | 性能、成本、灵活性再攀高峰
将一个excel文件中多个sheet页“拆分“成多个“独立“excel文件
openlayer中实现截图框截图的功能
OpenMLDB v0.5.0 released | Performance, cost, flexibility reach new heights
C语言实现猜数字(附带源码,可直接运行)
Day 77
活动预告 | 4月23日,多场OpenMLDB精彩分享来袭,不负周末好时光
OpenMLDB + Jupyter Notebook: Quickly Build Machine Learning Applications
【无标题】
【无标题】
OpenMLDB Pulsar Connector: Efficiently connect real-time data to feature engineering
何凯明新作ViTDET:目标检测领域,颠覆分层backbone理念
Interpretation of the paper: GAN and detection network multi-task/SOD-MTGAN: Small Object Detection via Multi-Task Generative Adversarial Network
实时特征计算平台架构方法论和基于 OpenMLDB 的实践
Day 83
Day 71
JS advanced web page special effects (pink teacher notes)
JNI入门