HowToCompileTheFirmware - mist-devel/mist-board GitHub Wiki

Prerequisites

The firmware is written in C. Thus a matching C compiler is needed. The current firmware setup expects a matching version of the gnu compiler collection (GCC) to be installed.

Installing GCC on Linux

Installation is described in this blog posting. A shell script is available to automate the setup.

Installing gmp, mpfr and libmpc

Building recent gcc versions requires some support libraries. The fastest method to obtain these is probably from the repositories of your Linux distro.

Under Fedora and Redhat the following command should install the required libraries:

sudo yum install gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel

Under Debian and Ubuntu a slightly different command is required:

sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev

If that doesn't help you might want to have a look at the gcc wiki.

Installing GCC on Windows

Refer to this page: How to compile the firmware under Windows

Compiling the source code

The firmware source code is available from the firmware repository.

Once the compiler is installed a simple make in the firmware subdirectory will build the latest firmware.

Installing the firmware

Three files are generated during compilation:

  • firmware.bin is the raw binary of the firmware. This can be uploaded to the MIST board using special flashers
  • firmware.hex is the same firmware in intel hex format as required by some uploaders
  • firmware.upg is the same firmware in a format suited for self-update via the on-screen-display (OSD)

During development it is most convenient to use a special flasher so the make flash target in the Makefile can be used.

For more details on firmware installation read appropriate section of the firmware installation wiki page.