Installation for Linux - diegodlh/jamulus GitHub Wiki

Home > Using Jamulus > Linux installation

Right now, we don't have any official packages available for Jamulus, but compiling the sources is quite easy.

Get Jamulus

Open up a terminal window (command line - CTRL+ALT+t on Ubuntu and related distros), and download and unzip the sources for latest release from here.

If you wish to use git (sudo apt install git), use this to get the latest official release automatically:

R=`curl -s https://api.github.com/repos/corrados/jamulus/releases/latest | grep -oP '"tag_name": "\K(.*)(?=")'` && wget https://github.com/corrados/jamulus/archive/$R.tar.gz && tar -xvf $R.tar.gz

Install the dependent packages

On Ubuntu-based distributions 18.04+, and on Debian 9 or 10, use this:

First, sudo apt-get update (or you may get "not found" messages)

sudo apt-get install build-essential qt5-qmake qtdeclarative5-dev qt5-default qttools5-dev-tools libjack-jackd2-dev

On Debian 11 (bullseye) or later, and Raspberry Pi Raspbian Buster release or later, use:

sudo apt-get install build-essential qtdeclarative5-dev qt5-default qttools5-dev-tools libjack-jackd2-dev

On Fedora use:

sudo dnf install qt5-qtdeclarative-devel jack-audio-connection-kit-dbus jack-audio-connection-kit-devel

You may also wish to consider using a low-latency kernel (eg. for Ubuntu 18.04: sudo apt-get install linux-lowlatency-hwe-18.04) but it is not essential.

Compile this bad boy

Now cd into the jamulus sources directory you downloaded (either with git or after downloading the .zip file):

cd jamulus

and compile the sources with the following commands (the last make may take several minutes to run):

qmake Jamulus.pro
make clean
make
sudo make install

Next, set up your sound card to work with Jamulus

Jamulus needs Jack to run. You can set up Jack using (for example) the QJackctl utility which you can install separately from a package on most Linux distributions. The exact settings for Jack will depend on what your audio interface/sound card is capable of.

Configure Jack to do the following:

  1. Set the audio Interface to the one you want (there may be several in the list)
  2. Set the Sample Rate to 48000
  3. Set the Frames/Period to 128 and Periods/Buffer at 2 at first
  4. Restart Jack to take any new settings

To run Jamulus, type Jamulus (with a capital J) on the command line (you should see the Jamulus client window appear)

Jamulus puts itself into /usr/local/bin. You can now delete the sources directory you compiled from.

If you get problems with sound breaking up (in particular XRUN errors reported by Jack/QJackctl) try setting bigger values (eg 256 frames or 3 periods) in step 3 above, or lower ones (eg 64 frames) for better performance. See the troubleshooting page otherwise.

Have a look also at Hardware Setup.

To update your installation to a new release

Download the new sources as per Get Jamulus and repeat the installation instructions as if for a new installation above.

Notes for geeks

  • The "make clean" is essential to remove the automatically generated Qt files which are present in the .tar.gz file and may not match the Qt version you are using.

  • To use an external shared OPUS library instead of the built-in use qmake "CONFIG+=opus_shared_lib" Jamulus.pro.

  • To use this file configure the software with qmake "CONFIG+=noupcasename" Jamulus.pro to make sure the output target name of this software is jamulus instead of Jamulus.

  • As of version 3.5.3, Jamulus is no longer compatible with Qt4.