annotate INSTALL.txt @ 1671:0d8ee478610b

Update INSTALL instructions
author Chris Cannam
date Mon, 10 Apr 2017 09:42:16 +0100
parents dac686f8efb8
children 0f389bfb0905
rev   line source
Chris@350 1
Chris@1671 2 To compile Sonic Visualiser from source
Chris@1671 3 =======================================
Chris@350 4
Chris@1671 5 Windows
Chris@1671 6 -------
Chris@350 7
Chris@1671 8 Use the Qt Creator IDE with either the MinGW compiler (for 32-bit
Chris@1671 9 builds) or Visual C++ (for 64-bit builds).
Chris@350 10
Chris@1671 11 For details, see the wiki page at
Chris@1671 12
Chris@1671 13 https://code.soundsoftware.ac.uk/projects/sonic-visualiser/wiki/WindowsBuild30
Chris@1671 14
Chris@1671 15
Chris@1671 16 MacOS
Chris@1671 17 -----
Chris@1671 18
Chris@1671 19 Build from the command line, but don't use the configure script.
Chris@1671 20 Instead install Qt v5.x and run the Qt "qmake" command, then "make".
Chris@1671 21
Chris@1671 22
Chris@1671 23 Linux
Chris@1671 24 -----
Chris@1671 25
Chris@1671 26 $ ./configure && make && make install
Chris@1671 27
Chris@1671 28 The following additional libraries are required or optional:
Chris@350 29
Chris@859 30 REQUIRED Qt v5 http://qt-project.org/
Chris@350 31 REQUIRED Vamp Plugin SDK v2.x http://www.vamp-plugins.org/
Chris@350 32 REQUIRED Rubber Band Library http://www.breakfastquay.com/rubberband/
Chris@350 33 REQUIRED libsndfile http://www.mega-nerd.com/libsndfile/
Chris@350 34 REQUIRED libsamplerate http://www.mega-nerd.com/SRC/
Chris@350 35 REQUIRED FFTW3 http://www.fftw.org/
Chris@350 36 REQUIRED bzip2 library http://www.bzip.org/
Chris@856 37 REQUIRED Sord and Serd libraries http://drobilla.net/software/
Chris@1671 38 REQUIRED Cap'n Proto http://capnproto.org/
Chris@350 39
Chris@350 40 Optional MAD mp3 decoder http://www.underbit.com/products/mad/
mathieu@441 41 Optional Oggz and fishsound http://xiph.org/oggz/
Chris@350 42 Optional liblo OSC library http://www.plugin.org.uk/liblo/
Chris@350 43
Chris@350 44 Optional JACK http://www.jackaudio.org/
Chris@350 45 Optional PortAudio v19 http://www.portaudio.com/
Chris@350 46 Optional PulseAudio http://www.pulseaudio.org/
Chris@350 47
Chris@350 48 Although JACK, PortAudio, and PulseAudio are individually optional,
Chris@1671 49 you will need to have at least one of them in order to get any audio
Chris@1671 50 playback. Usually JACK is preferred on Linux, with PulseAudio as a
Chris@1671 51 backup, and PortAudio is used elsewhere.
Chris@350 52
Chris@350 53 On Linux, you will need the ALSA libraries (used for MIDI).
Chris@350 54
Chris@1671 55 Cap'n Proto is a tricky dependency at the time of writing, as the
Chris@1671 56 version needed is more recent than the last official release (which is
Chris@1671 57 0.5.3 as I write -- hopefully this instruction will rapidly become
Chris@1671 58 obsolete). You can install a git checkout of Cap'n Proto like this:
Chris@350 59
Chris@1671 60 $ git clone https://github.com/sandstorm-io/capnproto
Chris@1671 61 $ cd capnproto/c++
Chris@1671 62 $ ./setup-autotools.sh && autoreconf -i
Chris@1671 63 $ ./configure --enable-static --disable-shared
Chris@1671 64 $ make && make install
Chris@1671 65
Chris@1671 66 For the rest, if you happen to be using a Debian-based Linux, you
Chris@1671 67 probably want to apt install something like the following packages:
Chris@1671 68
Chris@1671 69 build-essential libbz2-dev libfftw3-dev libfishsound1-dev
Chris@1671 70 libid3tag0-dev liblo-dev liblrdf0-dev libmad0-dev liboggz2-dev
Chris@1671 71 libpulse-dev libsamplerate-dev libsndfile-dev libsord-dev
Chris@1671 72 libxml2-utils portaudio19-dev qt5-default libqt5svg5-dev raptor-utils
Chris@1671 73 librubberband-dev git mercurial autoconf automake libtool
Chris@1671 74