when you build directly on VF2 then you dont need the parameter ‘ARCH=riscv’
here an fix for you issue:
riscv-march-$(CONFIG_RISCV_ISA_C) := $(riscv-march-y)c
# Newer binutils versions default to ISA spec version 20191213 which moves some
# instructions from the I extension to the Zicsr and Zifencei extensions.
+ toolchain-need-zicsr-zifencei := $(call cc-option-yn, -march=$(riscv-march-y)_zicsr_zifencei)
+ riscv-march-$(toolchain-need-zicsr-zifencei) := $(riscv-march-y)_zicsr_zifencei
I had slightly over 35 minutes running on nvme. I used ‘make -j8’ to involve all cpus.
One can make the compilation (much?) faster if one actually configures the kernel to build not every possible driver as it is done right now.
Hmm, just to (very unscientifically) compare the speed with my regular work station (i7-7700T CPU @ 2.90GHz), compiling yet another default configured kernel takes about 5 minutes. This matches my impression, that the VF2 is about 6 times slower, as soon as one starts to measure its raw perfomance.
When running VF2 with a nvme, the speed difference is not really noticeable in most tasks, though, imo. It all feels pretty normal and snappy. Not so, when running on mmc.