Skip to content
SunderB edited this page Dec 20, 2018 · 2 revisions

Here you will find a list of some of the dependencies for Sonic Pi. This list may be slightly incorrect or incomplete, so please add to/change this if needed.

Sonic Pi v3.1.0

Sonic Pi Server

Runtime dependencies

  • ruby - To run the Sonic Pi server code
  • erlang-base - to run the Erlang parts
  • supercollider & sc3-plugins (>= 3.9?)
  • aubio
  • osmid (to convert between OSC and MIDI; often built and packaged with Sonic Pi)

Build dependencies

  • ruby
  • ruby-dev - Header files for compiling extension modules for Ruby
  • erlang-base

Sonic Pi Qt GUI

Runtime dependencies

These libraries are dynamically linked at runtime:

  • qt5-default
  • libqt5scintilla2 (libqt5scintilla2-12v5)

Build dependencies

  • g++ - GNU C++ compiler
  • make
  • cmake
  • libqwt-qt5-dev libqt5scintilla2-dev libqt5svg5-dev qt5-qmake qt5-default qttools5-dev qttools5-dev-tools qtdeclarative5-dev libqt5webkit5-dev qtpositioning5-dev libqt5sensors5-dev qtmultimedia5-dev
  • libffi-dev

Building dependencies

Some dependencies may need to be built and/or packaged with Sonic Pi. Here's the links to the build instructions for some of them:

Supercollider scsynth build dependencies (v3.9.1) for GNU/Linux

(please see https://github.com/supercollider/supercollider/blob/develop/README_LINUX.md and the other README files for other platforms)

Note: This is only the list of dependencies for building on GNU/Linux, and this list doesn't include dependencies for the IDE.

  • gcc >= 4.8 - GNU C compiler
  • cmake >= 3.5 - Cross platform build system (on some platforms, cmake >= 2.9 may require manual build)
  • libjack (libjack-dev or libjack-jackd2-dev)
  • libsndfile1-dev >= 1.0
  • fttw >= 3.0 (libfftw3-dev)

  • libxt-dev - X toolkit intrinsics, required for UGens such as MouseX. To build the servers without X, use the NO_X11=ON CMake flag.
  • libavahi-client-dev - For zero-configuration networking. To build the servers without Avahi, use the NO_AVAHI=ON CMake flag.

  • git - used by the Quarks package management system
  • udev (libudev-dev) - Device manager library, required for HID support.
  • ALSA (libasound2-dev) - Linux sound library, required for sclang MIDI support.
  • libreadline >= 5 (libreadline6-dev) - Required for sclang's CLI interface.
  • pkg-config

aubio build dependencies

(please see https://aubio.org/manual/latest/installing.html#building-aubio)

  • python
  • pkg-config
  • libav
  • libsndfile
  • libsamplerate
  • libfftw3

osmid build dependencies (according to install instructions as of commit e223598)

(please see https://github.com/llloret/osmid/blob/master/INSTALL.md)

  • cmake >= 3.0
  • gcc compiler >= 4.9 or Microsoft Visual C++ 2015 or clang
  • ALSA development libraries (on Linux only)