Join us on Facebook!
This chapter is about compiling the code inside the tar.gz you download from this site. If you are trying to compile the code downloaded/cloned from GitHub, take a look here.
Compiling Giada from source requires a C++11-compatible compiler. 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:
When the script is done without errors, do:
to compile everything. If you wish to install Giada on Linux, become root and type
to copy the binary file into /usr/local/bin path.
Optionally, if you want to run the test suite, just do:
All unit tests 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 above will just run the entire test suite.
--enable-debug — enable debug mode (mainly asserts). It is 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);
Giada is based upon several external libraries, plus a custom version of RtAudio shipped with the source package. Our hacked RtAudio provides Jack Transport support on Linux, a feature that you wouldn't find in the vanilla release. At the present moment we suggest you to use the following versions:
In order to compile Giada with VST support you have to enable the feature via configure script. Add the following parameter:
e.g. if you want to compile for Linux with VST support, do:
./configure --target=linux --enable-vst
You won't find any VST header into our source package, since we cannot distribute the SDK from Steinberg. To solve this issue:
Instead of cluttering up your environment with dependencies, scripts and compilers you may try our Docker image, designed to ease the compilation and testing processes. Take a look at the GitHub repository to know more.