天天看点

【RISC-V Rocket】Ubuntu18.04下快速搭建Rocket环境

经常重装系统,所以记录一下。

  1. 换源
sudo gedit /etc/apt/sources.list
           

删除sources.list所有内容,添加

deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
           

再输入

sudo apt-get update
sudo apt-get upgrade
           
  1. 下载解压riscv-tools

    git下载过程可能比较缓慢,这里提供其他下载链接: 百度云.提取码 0t12

    下载完zip压缩包后,找到合适的位置解压

unzip risc-tools.zip
           
  1. 编译riscv-tools

    编译前先安装依赖

sudo apt-get install autoconf automake autotools-dev curl libmpc-dev libmpfr-dev libgmp-dev libusb-1.0-0-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev device-tree-compiler pkg-config libexpat-dev
sudo apt install openjdk-8-jdk-headless 
sudo apt install git
sudo apt install python
           

设置环境变量,RISCV路径是工具链存放的位置自己选择,MAKEFLAGS中的-j6代表用6核来跑,这个根据自己CPU的情况,一般越多越快。

export RISCV=/home/k/riscv-toolchain
export MAKEFLAGS="$MAKEFLAGS -j6"
           

编译

cd riscv-tools
./build.sh
           
  1. 获取rocket repo 这里最好搭梯子,国内的速度慢
git clone https://github.com/ucb-bar/rocket-chip.git
cd rocket-chip
git submodule update --init
           
  1. 生成C++ emulator测试
cd rocket-chip/emulator
make -j6 run
           

没有报错则riscv-tools和rocket安装编译成功,接下来可以做想做的实验了