如何搭建riscv架构的用户开发环境
host环境
先在PC Host机器上安装VMware,以及ArchLinux。
安装archlinux
Arch Linux下载地址:http://mirrors.163.com/archlinux/iso/latest/
参考:https://www.linuxprobe.com/vm-install-archlinux.html
安装vmtools
riscv环境
这套环境的原理是:
- nspawn维护一套独立的rootfs
- 而这套rootfs里的systemd是riscv架构的elf,系统会调用binfmt解析出是riscv,从而调用qemu-riscv64
- 然后容器内的都是systemd启动的,都是riscv架构的,就都会调qemu-riscv64
一、准备工作
需要准备一台安装有 Linux 操作系统的电脑,这里推荐 Debian、Arch Linux
###
二、需要安装的软件
安装 QEMU
####
Deban
安装qemu-user-binfmt
,qemu-user-static
,systemd-container
1 | $ sudo apt-get install qemu-user-binfmt qemu-user-static systemd-container |
apt-get 命令会自动帮你将依赖的软件包装好
####
Arch Linux
安装binfmt-qemu-static
,qemu-user-static
1 | $ sudo pacman -S qemu-user-static binfmt-qemu-static |
Arch Linux 用户不用安装systemd-container
注意: 两个软件包在 archlinuxcn 源里面,如果没有添加 archlinuxcn 仓库的话,请看Arch Linux 中文社区仓库,添加 archlinuxcn 仓库,然后在安装软件包。
###
三、配置你的 RISC-V 环境
下载安装 arch risc-v 根文件系统
1 | $ wget -c http://mirrors.wsyu.edu.cn/archriscv/images/archriscv-20210601.tar.zst |
将下载的根文件系统解压缩
arch linux 用户
1
2$ mkdir archriscv
$ sudo bsdtar -xvf archriscv-20210601.tar.zst -C archriscv非 arch linux 用户
1
2$ mkdir archriscv
$ sudo tar -I zstd -xvf archriscv-20210601.tar.zst -C archriscv如果没有 zstd,则需要安装,安装命令如下
1
$ sudo apt-get install zstd
###
四、启动虚拟机
1 | $ sudo systemd-nspawn -D /home/tsuibin/archriscv/ --machine archriscv |
###
五、检查环境及编译一个 RISC-V 程序
检查是否运行运行在 riscv64 模式
1 | # uname -m |
安装 vim
1 | # sudo pacman -S vim |
使用 vim 编写一个简单的 c 程序
1 | # vim hello.c |
输入
1 | #include <stdio.h> |
编译
1 | # gcc hello.c -o hello |
检查编译后的文件格式
1 | # file hello |
看到是 RISC-V 的 elf 文件就说明 gcc 正常 运行 hello
1 | # ./hello |
到此,轻量级的 RISC-V 开发环境就搭建好了
Others
升级下系统环境
1 | $ pacman -Syyu |
安装vim
1 | $ pacman -S vim |