How to compile RNNoise for RISC-V 64

I share with you how to get around a problem I had to solve with the Debian snapshots for SBC Mars that Shenzhen Qunyi Shine Technology Co., Ltd. (Milk-V) and StarFive offer to their customers for the JH7110 SoC.

They suggest that we not update the system with apt and they are right because it would become unmanageable, but those like me who buy these products don’t do it to click or tap on icons, they probably want to make a more advanced and more automated use of them and without being able to update the operating system we risk not even being able to compile the software we already know and as a result we will make the “RISC-V ecosystem” less fertile for less experienced people who will follow our example.

The RNNoise code and instructions for compiling it are located at https://gitlab.xiph.org/xiph/rnnoise and highlight the latest addition of Jean-Marc Valin, a developer who I can never thank enough for the work he has done.

Two years have passed since the highlighted addition and therefore updated instructions on how to complete the compilation would be useful in general and not just for the hardware we have.

Start with:

sudo nano /etc/apt/sources.list

and make sure you have the following repository:

deb https://deb.debian.org/debian unstable main

then execute this sequence of commands:

sudo atp update
sudo apt install autogen
sudo apt install configure-debian
sudo apt install dh-autoreconf
./autogen.sh
./configure
make -j36
sudo make install -j36

You will now have the RNNoise libraries installed on your system and the demo program to try them in the examples folder.

RNNoise is an audio noise suppression library based on a recurrent neural network and it cannot be missing on the hardware used to record the human voice. Those who don’t know it yet can find the documentation on Archiv website and further information on the Mozilla and Jean-Marc Valin’s website.

I’m sure someone will appreciate it.

Thank you for sharing.