Buildroot is a system for creating Linux based operating systems with a fully customisable arrangement. Buildroot can be run in any Linux environment but on Ubuntu it requires a few extra packages:
sudo apt install build-essential clang flex bison g++ gawk gcc-multilib g++-multilib gettext git libncurses5-dev libssl-dev python3-distutils rsync unzip zlib1g-dev file wget