RISC-V GNU Toolchain is a C and C++ cross-compiler for building toolchains that target bare-metal ELF or Linux ELF. Bare-metal builds can use Newlib or Picolibc; Linux builds can use glibc, musl or uClibc. The default target is RV64GC, with configuration options for RV32 or RV64, architecture extensions and ABIs. Multilib builds can cover 32-bit and 64-bit targets for Newlib and Linux/glibc toolchains. The toolchain includes GCC, binutils and GDB. LLVM can be built alongside it using a configure option, though that cannot be combined with multilib configuration. Testing support includes DejaGNU and make check targets for GCC, Binutils and glibc on Linux toolchains. Documentation describes QEMU, GDB and experimental Spike simulator options, whose availability varies by toolchain. It supports Linux and macOS hosts, with Windows use through a Linux subsystem or Cygwin. The project is free and open-source. Building needs about 8 GiB of disk space, while cloning takes around 6.65 GB.
Who it is for
It suits developers and advanced users building RISC-V toolchains, especially those working with their own source trees. It is also relevant to teams that need to configure bare-metal or Linux targets.
What is good
- Supports both RV32 and RV64 configurations.
- Offers several C library options for bare-metal and Linux.
- Includes GCC, binutils and GDB.
- Documents DejaGNU testing and make check targets.
What to know first
- A build needs about 8 GiB of disk space.
- Cloning takes around 6.65 GB.
- LLVM and multilib configuration flags cannot be combined.
Verdict
RISC-V GNU Toolchain covers both bare-metal and Linux toolchain builds, with configurable architectures, ABIs and libraries. Its documented build and clone sizes are substantial, so allow for that disk space.
RISC-V GNU Toolchain plans and pricing
All plansCompared on embedded systems toolchains
- Free plan
- Yes
- Debugger included
- Yes
- SDK components
- GCC, binutils, GDB, Newlib, Picolibc, glibc, musl, uClibc, QEMU, Spike
- Target architectures
- RV32 and RV64 with standard RISC-V extensions; configurable multilib targets
- Host platforms
- Linux, macOS, Windows via Linux subsystem or Cygwin
- Build systems
- Autotools configure and Make
- Debug interfaces
- GDB simulator, QEMU, Spike
- License model
- open-source

