Despite the fact I really want to move away from WordPress, I need to write this down here.
The other day I did a heavy update of my ‘workstation’ machine. I jump several Ubuntu releases and suprisingly most of things ended up working the way they worked before. SuperCollider was unfortunately not one of them. So I decided to recompile from source, using the latest release from SuperCollider Download page (3.12.1) and my notes for compilation on Ubuntu from 2019.
I’m now on Ubuntu version 20.04 codenamed focal. I first fetched all packages needed for compilation:
sudo apt-get install build-essential libsndfile1-dev libasound2-dev libavahi-client-dev libicu-dev libreadline6-dev libncurses5-dev libfftw3-dev libxt-dev libudev-dev pkg-config cmake qt5-default qt5-qmake qttools5-dev qttools5-dev-tools qtdeclarative5-dev qtpositioning5-dev libqt5sensors5-dev libqt5opengl5-dev qtwebengine5-dev libqt5svg5-dev libqt5websockets5-dev libjack-jackd2-dev checkinstall
If something goes wrong in the above step, you can refer to the page Installing SuperCollider from source on Ubuntu on SuperCollider github’s wiki.
Download SuperCollider sources from the download page mentioned above and uncompress (it’s a bziped tar) them somewhere with a
tar xjvf SuperCollider-3.12.1-Source.tar.bz2
Enter the folder with sources, create a build
folder and enter it:
cd SuperCollider-3.12.1-Source; mkdir build; cd build
Configure make (cmake):
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_TYPE=RelWithDebInfo -DNATIVE=ON ..
Start compilation (-j 12 argument means how many (12) paralel cores can make use. also lotsa warnings but if you don’t end up with ‘Build failed’, then build was successful):
make -j 12
Now create a deb with checkinstall (using date and $HOSTNAME for package version):
export DATE=`date +%Y%m%d`
sudo checkinstall -D --pkgname=supercollider --backup=no --install=no --nodoc -y --pkgversion=1:3.12.1-$HOSTNAME$DATE
SC3 plugins
Similarly untar, configure and compile sc3-plugins (adjust DSC_PATH and pkgversion):
cd ../../sc3-plugins-3.12.1-Source/
mkdir build
cd build/
cmake -DSC_PATH=/home/$USER/.local/src/supercollider/SuperCollider-3.12.1-Source -DCMAKE_BUILD_TYPE=Release -DSUPERNOVA=ON ..
cmake --build . -j 12 --config Release
export DATE=`date +%Y%m%d`
sudo checkinstall -D --pkgname=sc3-plugins --backup=no --install=no --nodoc -y --pkgversion=1:3.12.1-$HOSTNAME$DATE
Installing
Remove previous installation of SuperCollider and plugins first:
sudo apt remove supercollider sc3-plugins
Install the debs:
sudo gdebi SuperCollider-3.12.1-Source/build/supercollider_3.12.1-$HOSTNAME$DATE-1_amd64.deb
and
sudo gdebi sc3-plugins-3.12.1-Source/build/sc3-plugins_3.12.2-$HOSTNAME$DATE-1_amd64.deb