Login
Building midi123
Login

Building midi123

Requirements

midi123 has been developed using Crystal 1.4.x through 1.6.x. Previous versions will likely work, but may require a bit of tweaking.

Regardless of your Crystal version, you will need an updated version of the Shards command that has Fossil support built into it. Support was introduced in Shards 0.17.0. If you have problems, you can always use my personal fork of Shards as a temporary measure.

Fossil is required as some of midi123's dependencies are in Fossil repositories.

You'll need both PortAudio and PulseAudio installed.

Getting the sources

$ fossil clone https://chiselapp.com/user/MistressRemilia/repository/midi123/
$ cd midi123

Building with Rake

Using Rake is the easier way to build midi123. For a default build, you can just run rake from the root repository directory. The binary will be in the bin/ directory.

The default target is midi123, and it has it one option that can be one of three values:

Examples of setting these:

There are also a few other targets:

You can then use rake to build things in the following ways:

Building manually with Shards

You can forego using Rake if you choose and just use Shards directly. When doing this, it's important to be aware of a few compiler flags:

Examples:

$ shards build --release -p -Dpreview_mt

$ shards build -p