Like it!

Join us on Facebook!

Compiling from source

Giada source code is hosted and mantained on GitHub and requires a C++14-compatible compiler. If you're new to GitHub, we recommend a very nice tutorial for beginners.

Grab the code

First of all clone the remote repository on your machine:

git clone

a new folder giada will be created. Go inside and initialize the submodules (i.e. the dependencies):

git submodule init  
git submodule update --recursive

Finally, run the included script in order to prepare the build environment.

Configure and build

The configure script inside the package, designed for Unix systems and MinGW (Windows) will help you to guess correct values for various system-dependent variables used during compilation. You have to pass it the --target parameter depending on your operating system:

./configure --target=[linux | osx | windows]

e.g. if you want to compile for Linux, do:

./configure --target=linux

When the script is done without errors, do:


to compile everything. If you wish to install Giada on Linux, become root and type

make install

to copy the binary file into /usr/local/bin path.


Most of the dependencies are included as git submodules. However, Giada currently requires some external libraries to be installed on your system. Namely:

  • FLTK — 1.3.[0 or greater];

  • Libsndfile — 1.0.28 or greater;

  • Libsamplerate — 0.1.9 or greater;

  • RtMidi — 3.0.0 or greater;

Additional flags

  • --enable-vst — enable support for VST plug-ins. Disabled by default;

  • --enable-debug — enable debug mode (mainly asserts). Disabled by default;

  • --enable-system-catch — by default Giada includes Catch from the local source folder. Pass this flag to use the system provided one instead (useful in most Linux distributions);

Run the tests (optional)

All unit tests in Giada are based on Catch automated test framework, which supports several command-line options. Please take a look at the official documentation to understand the gritty details. The command below will just run the entire test suite:

make check