Skip to content

Latest commit

 

History

History
63 lines (43 loc) · 1.8 KB

BUILDING.md

File metadata and controls

63 lines (43 loc) · 1.8 KB

Image structure

The image generated by Mr. Fusion is composed of three main parts compatible with the DE10-nano development board:

  • A bootloader and an FPGA bitstream that provides HDMI output, provided by the documentation on the DE10-nano CD (DE10_NANO_SoC_FB).
  • A custom Linux kernel built from source provided by Intel.
  • A custom rootfs built by Buildroot.

If necessary the build process will generate a cross compilation toolchain using Buildroot to compile all of the above.

Build process

Setup your build machine

You need a Linux system to build the Mr. Fusion SD card image. The official releases are built on a Debian 11 arm64 virtual machine running on Apple Silicon through qemu. But any Linux distro in a VM or on bare metal that can compile Buildroot and the Linux kernel should work.

NOTE: You can configure the number of threads used for compilation of the Linux kernel through the COMPILE_THREADS variable in the build.sh script.

Clone this repository on your machine and run the setup script:

git clone https://github.com/MiSTer-devel/mr-fusion.git
cd mr-fusion
./setup.sh

It will take some time and download a few gigabytes of source code.

Building the components

The build.sh script will build a rootfs and the Linux kernel, with the former embedded as an initramfs into the latter:

./build.sh

Generating the SD card image

Once that has successfully completed you can generate the SD card image by executing the following command:

./create-sd-card-image.sh

If successful, the resulting image can be found in the images folder. It is ready to be flashed to an SD card.

Cleaning up

If you want you can clean the build environment with the clean.sh script:

./clean.sh