Build System
The FunKey S console is based on a sophisticated Allwinner V3s ARM Cortex-A7 1.2GHz CPU, an Operating System is mandatory in order to access all the hardware resources without re-inventing the wheel.
Programs made for other computers will not work on the FunKey S, and developing programs on the FunKey S itself is rather impractical (too slow, not enough RAM, etc.).
Instead, development for embedded devices like the FunKey S uses a method known as cross compilation for building software on a host platform (such as a desktop computer) to be used on another target platform (like the FunKey S).
The FunKey OS repository on Github contains all the sources required to build the Open-Source firmware at the heart of the FunKey S retro-gaming console.
This repository also contains a standalone SDK, which is a cross-compilation environment based on the GNU GCC compiler and binutils binary object tools, including the compiler toolchain and all the required libraries available on the FunKey S in order to build software for it.
FunKey OS is based on Linux, and is built from scratch using the buildroot tool that simplifies and automates the process of building a complete Linux system for an embedded system like this.
Technically speaking, FunKey OS is a buildroot (v2) based external tree for building the bootloader, the Linux kernel and user utilities, as well as the optimized retro-game launchers and console emulators.
For detailed explanations on how to use buildroot itself, please refer to the Buildroot Manual.