mkdir risc-v-gcc
cd risc-v-gcc
git clone https://github.com/crosstool-ng/crosstool-ng.git
./bootstrap
./configure <optionally specify --prefix installdir>
make && make install
Use riscv32-unknown-elf sample config as a base
ct-ng riscv32-unknown-elf
Adapt configuration for the hifive1:
ct-ng menuconfig
- Enable newlib build (C-library section)
- Enable "Build a multilib toolchain" (Target options section)
ct-ng build