Ubuntu 20 binaries or compiling

Did I try oh did I try…

I followed to the letter the GitHub instructions and it seems the QT installation instructions do not behave with Ubuntu 20… at least I didn’t get them to.

I had to do that when I got complaints from the apt-get version I got, which is not up to date (3.10) and cannot find the dependencies… sigh.

I am this time on a Parallels Ubuntu 20 VM. I am happy to wipe it again and start from scratch, installing jackd is one line away…

I searched this forum and the web, and there seems to be very little agreement on a straightforward way to install all dependencies…

so 2 questions:

1- who updates the apt-get and/or any other compiled binary for Ubuntu 20 ?

2- is there an idiot(yours truly)-proof compilation proceedure for a fresh ubuntu install?

(3 should I ditch Ubuntu for Arch Linux)

Thanks, sorry, and have a good evening

Have you already considered compiling SC yourself? I’m on Ubuntu Studio 20.04 and that worked fine for me. Also you can install the very latest version. Qt didn’t cause any headaches for me.

I’d second the recommendation to build yourself. Linux is probably the easiest platform for that.

1/ https://github.com/supercollider/supercollider/blob/develop/README_LINUX.md#installing-requirements-on-debian

sudo apt-get install build-essential cmake libjack-jackd2-dev libsndfile1-dev libfftw3-dev libxt-dev libavahi-client-dev

sudo apt-get install git libasound2-dev libicu-dev libreadline6-dev libudev-dev pkg-config libncurses5-dev

2/ https://github.com/supercollider/supercollider/blob/develop/README_LINUX.md#installing-qt

Ubuntu 20 has Qt 5.12, which is new enough.

sudo apt-get install qt5-default qt5-qmake qttools5-dev qttools5-dev-tools qtwebengine5-dev libqt5svg5-dev libqt5websockets5-dev

3/ https://github.com/supercollider/supercollider/blob/develop/README_LINUX.md#building

In “Step 3: Set CMake flags,” you can ignore most of it. If cmake complains that it can’t find Qt, then Nonstandard Qt locations might be relevant (but I think in Ubuntu 20+, it shouldn’t).

It seems intimidating but it’s actually pretty straightforward.


I spent about 4h trying to get it to compile, yes. Hence this thread where I read the instructions and still failed to get QT to behave. I wanted to do the full compile with IDE.

First for a Linux newbie, Debian and Ubuntu being used interchangably in the read-me is a source of confusion. I know it is my problem but hey, @jamshark70 your instructions here are so straighforward I’ll re-dowload the VM and start from a fresh OS install. I know how to do jackd (although by default apt-get install jackd installs what seems to be an old version so again recommendations of jack1 vs 2 and apt channels is welcome here)

speaking of jack, I found this script to be incredibly useful to help newbies in Linux to get the OS to behave: https://github.com/raboof/realtimeconfigquickscan

I vaguely remember someone wrote a blog on SC in Linux for dummies like me and now I want it badly - I’d be happy to help wth my ignorance to go from a clean Ubuntu install to a lean music machine with jack, pd and sc only, which is what I need for now…

anyway, thanks and I’ll get going.

Sorry for not going into details with my SC installation on Ubuntu Studio (thanks @jamshark70 ). Basically I just followed the README_LINUX (I think). However. I’m a bit of a lazy person sometimes, so I didn’t want to spend too much time setting up a proper realtime environment on Ubuntu and went straight on to Ubuntu Studio which did it for me. I can confirm https://github.com/raboof/realtimeconfigquickscan is a great tool for checking the environment. If you’re considering moving from Ubuntu to Ubuntu Studio I can recommend installing ubuntustudio-installer (via apt or apt-get). I know Ubuntu Studio installs a lot stuff that you potentially won’t need or want. But that’s configurable and, of course, you can uninstall programs you don’t want or need. Anyway, it comes with Jack2 pre-installed and that will work fine with SC.

This is all helpful. I’m obsessed with not installing too much stuff so Ubuntu studio, which I tried, and which gave me strange warnings about not being too happy with U-20, started to bloat my harddrive and I cried. So I restarted. I get good at starting from scratch :slight_smile:

At the moment, I’ll see if Pd is compatible with jack2, and if so, how to install it from apt-get. Literally having 4 things (jack, qjackctl, sc and pd) on that machine. Now I am told that this is a very ‘arch’ way of thinking but I am not certain I am ready to jump there…

ok I gave this another go, from a fresh ubuntu 20 install. I ran everything that @jamshark70 kindly wrote, and it bailed with the error ‘UDEV_INCLUDE_DIR’ documented in this thread so I compiled with this cmake -DCMAKE_BUILD_TYPE=Release -DNATIVE=ON -DSC_HIDAPI=OFF -DSC_EL=no .. and it eventually compiled… but when i try to start scide it says the command is not found. Now, did I kill the ide by making EL=no?

I hope my problems will help someone else too.

EDIT: it works - I had forgotten to read until the end and run make install as sudo. but I still had to catch these errors so there is something here to be shared.

So, you made it work?

Now, did I kill the ide by making EL=no?

No, it shouldn’t. The IDE can be included by setting SC_IDE to on or off.
I somehow assume you got SC running now. You could check if things are in place. I.e. if you left CMAKE_INSTALL_PREFIX at /usr/local class library, examples and other stuff should have been moved here: /usr/local/share/SuperCollider/. The binaries for sclang, scsynth, supernova and scide should be here: /usr/local/bin/

Happy colliding!

indeed. But i had to look for the errors I got and only EL=no and HIDAPI=off saved the workflow.

I have on MacOS for 13 years although I’m still a very beginning intermediate :slight_smile: I just have to make sure FluCoMa behaves on Linux too… although the speed I get on Linux, plus the general irritation towards Apple’s business trends, make me consider the switch. When Reaper is making the move, then with a pro DAW that starts to be hard to resist :slight_smile:

… just gave it a try: cmake .. -DHID_EXAMPLE_TEST=ON -DHID_EXAMPLE_OSC=ON -DHID_DEBUG_PARSER=ON && make
worked. Obviously I had libudev-dev installed already and HID_INSTALL_HUT:BOOL=ON set.
HID.findAvailable; posts

-> IdentityDictionary[ (1 -> a HIDInfo(MOSART Semi., 2.4G Keyboard Mouse, IDs:1578, 16641, /dev/hidraw1, , 264, 1)), (0 -> a HIDInfo(MOSART Semi., 2.4G Keyboard Mouse, IDs:1578, 16641, /dev/hidraw0, , 264, 0)) ]

… nice.

But to add a bit to questions about SC on Linux platforms: I am using Linux on the job for audio production. I work at a radio station and everything IT is running on Debian or Ubuntu (Debian was there earlier but in order to get everything audio set up it seemed easier to me to move to Ubuntu Studio).
I’ve tested Manjaro on my old MacBook (and bricked it with a system upgrade :stuck_out_tongue: ). Pacman as package manager rather gave me a hard time. For someone used to apt it feels a bit sparse (e.g. it seemed it’s impossible to install the dev headers needed by Supercollider) … but I admit I didn’t read too much. (machine is still a brick).
Anyway, apt is a great asset on Debian-derived platforms, I think - and makes compiling SC as easy as possible.

1 Like