Raspberry Pi Wheezy ships with SuperCollider, but it ships with an old version that does not have support for Qt graphics. This post is only slightly modified from this (formerly) handy guide for building an unstable snapshot of 3.7 without graphic support. There are a few differences, however to add graphic support and maintain wii support.
This requires the Raspbian operating system, and should work if you get it via NOOBs. I could not get this to fit on a 4 gig SD card.
Note: This whole process takes many hours, but has long stretches where it's chugging away and you can go work on something else.
Preparation
- log in and type
sudo raspi-config
, select expand file system, set timezone, finish and reboot sudo apt-get update
sudo apt-get upgrade
# this might take a whilesudo apt-get remove supercollider
# remove old supercollidersudo apt-get autoremove
sudo apt-get install cmake libasound2-dev libsamplerate0-dev libsndfile1-dev libavahi-client-dev libicu-dev libreadline-dev libfftw3-dev libxt-dev libcwiid1 libcwiid-dev subversion libqt4-dev libqtwebkit-dev libjack-jackd2-dev
sudo ldconfig
Build SuperCollider
wget http://downloads.sourceforge.net/project/supercollider/Source/3.6/SuperCollider-3.6.6-Source.tar.bz2
tar -xvf SuperCollider-3.6.6-Source.tar.bz2
rm SuperCollider-3.6.6-Source.tar.bz2
cd SuperCollider-Source
mkdir build && cd build
sudo dd if=/dev/zero of=/swapfile bs=1MB count=512
# create a temporary swap filesudo mkswap /swapfile
sudo swapon /swapfile
CC="gcc" CXX="g++" cmake -L -DCMAKE_BUILD_TYPE="Release" -DBUILD_TESTING=OFF -DSSE=OFF -DSSE2=OFF -DSUPERNOVA=OFF -DNOVA_SIMD=ON -DNATIVE=OFF -DSC_ED=OFF -DSC_EL=OFF -DCMAKE_C_FLAGS="-march=armv6 -mtune=arm1176jzf-s -mfloat-abi=hard -mfpu=vfp" -DCMAKE_CXX_FLAGS="-march=armv6 -mtune=arm1176jzf-s -mfloat-abi=hard -mfpu=vfp" ..
# should add ‘-ffast-math -O3’ here but then gcc4.6.3 failsmake
# this takes hourssudo make install
cd ../..
sudo rm -r SuperCollider-Source
sudo swapoff /swapfile
sudo rm /swapfile
sudo ldconfig
echo "export SC_JACK_DEFAULT_INPUTS=\"system\"" >> ~/.bashrc
echo "export SC_JACK_DEFAULT_OUTPUTS=\"system\"" >> ~/.bashrc
sudo reboot
Test SuperCollider
jackd -p32 -dalsa -dhw:0,0 -p1024 -n3 -s &
# built-in sound. change to -dhw:1,0 for usb sound card (see more below)scsynth -u 57110 &
scide
s.boot;
{SinOsc.ar(440)}.play
- Control-.
Optional: Low latency, RealTime, USB Soundcard etc
sudo pico /etc/security/limits.conf
- and add the following lines somewhere before it says end of file.
@audio - memlock 256000
@audio - rtprio 99
@audio - nice -19
- save and exit with ctrl+o, ctrl+x
sudo halt
- power off the rpi and insert the sd card in your laptop.
dwc_otg.speed=1
# add the following to beginning of /boot/cmdline.txt (see http://wiki.linuxaudio.org/wiki/raspberrypi under force usb1.1 mode)- eject the sd card and put it back in the rpi, make sure usb soundcard is connected and power on again.
- log in with ssh and now you can start jack with a lower blocksize
jackd -p32 -dalsa -dhw:1,0 -p256 -n3 -s &
# uses an usb sound card and lower blocksize- continue like in step5.2 above
links:
- http://wiki.linuxaudio.org/wiki/raspberrypi
- https://supercollider.github.io/development/building-raspberrypi.html
This post is licensed under the GNU General Public License.
No comments:
Post a Comment