- Get QEMU-riscv64:
pacman -S qemu-arch-extra
- Compile riscv-gnu-toolchain
-
git clone https://github.com/riscv-collab/riscv-gnu-toolchain && cd riscv-gnu-toolchain
- Install dependencies:
sudo pacman -Syyu autoconf automake curl python3 libmpc mpfr gmp gawk base-devel bison flex texinfo gperf libtool patchutils bc zlib expat
-
./configure --prefix=/opt/riscv
-
make && make linux
- add
export PATH="/opt/riscv/bin/:$PATH"
to the file .zshrc or .bashrc
-
To be sure your dev-env is ready try to compile hello_world.c and run it through qemu-riscv64:
riscv64-unknown-elf-gcc -static -Wall --pedantic hello_world.c
qemu-riscv64 a.out
For more details see: https://saveriomiroddi.github.io/Quick-riscv-cross-compilation-and-emulation/
To set an handful of useful aliases run:
source configure_env
Now you can run build filename.s
, run exec.out
and debug exec.out
.