Install successfully 3.2.2 Linux Debian 10

Hi all,

I am very satisfied to have successfully completed this installation from the sources without difficulty. The only adaptation I had to make is to replace in the list of dependencies libffi7 by libffi6.
The distribution is installed in ~ / sonic-pi
To start first launch qjackctl.



hi @jean31270,

which method have you followed ?

The one indicated in the file at this address:

1 Like

I also just found that, I’m glad there’s kindof linux support now!
See whether it works… (cause my 3.2.2 still has this use_merged_synth_defaults bug)

Thanks for the reminder @gedobbles - I’ll make sure that’s followed up :slight_smile:

1 Like

Doesn’t seem to work, I hang with erlang built from source and

/opt/sonicpi/sonic-pi/app/gui/qt/external/sp_midi/src/sp_midi.h:3:10: fatal error: erl_nif.h: Datei oder Verzeichnis nicht gefunden
 #include <erl_nif.h>
compilation terminated.

when running

./ --build-aubio

. Anybody a hint?

@gedobbles are you building from the main branch or from a tag? You’ll have a lot more stability if you stick to the tags.

How do you do that? I’m not that much into Github
I just did

git clone

as the manual says :sweat_smile:

Should I just do

git checkout 69b6eee 

for Tau3 (which has still the problem with use_merged_synth_defaults i guess)?

That will get you the latest source which is not ideal unless you want to develop or test the absolute latest code.

Ideally you’d use git to checkout a specific tag. However, if you’re not familiar with git, it might be easier to just download the .zip file of the latest tag direct from Github’s releases page:

For example for v3.2.2 which is the current latest at the time of writing you can fetch the source from here:

I didn’t say I wasn’t familiar with git I only have never heard of the word “tag” in that context, but I do get what you mean.

so I do

git checkout v.3.2.2 

and see whether that works

I also got this error before installing the latest Erlang and CMake. Can you try installing them as described in the guide?

You should also switch the repo to v3.2.2 before following the installation instructions: run git checkout tags/v3.2.2 -b v3.2.2 inside the cloned repository to do that

I have

$ erl
Erlang/OTP 24 [DEVELOPMENT] [erts-11.0.2] [source-b3c8383d6a] [64-bit] [smp:16:16] [ds:16:16:10] [async-threads:1] [hipe]
$ cmake --version
cmake version 3.17.3

CMake suite maintained and supported by Kitware (

seems to work now

EDIT: Actually compiles, but I’d liked to have a “bleeding edge” version.
How do you know whether it compiles when there are new commits on the master branch?

1 Like

It normally does, but we’re going through quite a bit of turbulence right now as we completely replace our MIDI subsystems.

Typically I’d always strongly suggest working with the tags unless you want to get involved with development. Whilst we don’t currently officially support Linux, it’s easier to offer advice if you stick to trusted waypoints which the tags are.

Working with the latest main branch means you’re on your own in many ways, although if you do fix things then you’d be able to directly contribute to development :slight_smile:

So in the current commit of the master branch there seems to be a problem with the include of erl_nif.h.
Has the thing with use_merged_synth_defaults already been fixed?

Not sure, I’m currently focussed 100% on MIDI stuff right now.

GitHub issues are the best place to talk about bugs and their respective fixes :slight_smile:

If there are still issues they’ll be fixed before I create the first 3.3 beta.

Not sure whether there still is an open issue, better ask @ethancrawford, he proposed a solution I guess

I just found the corresponding pull request #2384 got closed, however the change is neither in the current master nor main branch code, probably there was another change fixing this?

EDIT: the fix proposed in pull request #2384 works fine for me, should I open an issue?

Thanks for the heads up. I’ll look into it next week after the MIDI stuff has settled.

1 Like

@gedobbles I did say I’d make sure that it was followed up, but perhaps did not clarify its current state :joy::sweat_smile: - the use/with_merged_synth_defaults bug has not been fixed yet. I have a proposed solution, but am waiting for feedback before I create a PR ready for it to be merged. Hopefully it will make it into the next official release.

As a note for anyone on Linux whose package manager installs static libs into /x86_64-linux-gnu (I think this is from GCC/G++), it turns out that the FFI lib only checks for /usr/lib, /usr/local/lib, and /opt/local/lib.

Sonic Pi will fail on the FFI check for libaubio so you’ll need to sudo apt install libaubio and then cp it into one of those directories.