LinuxBuild31 » History » Version 6

Chris Cannam, 2018-07-12 03:16 PM

1 1 Chris Cannam
h1. Building SV v3.1 on Linux
2 1 Chris Cannam
3 1 Chris Cannam
The Linux build uses an Autotools @configure@ script. It's the only platform build to use this.
4 1 Chris Cannam
5 1 Chris Cannam
# Install the necessary library packages
6 1 Chris Cannam
# Run @./configure@
7 1 Chris Cannam
# Run @make@ and @make install@
8 1 Chris Cannam
9 1 Chris Cannam
The necessary system packages are the following (using Debian/Ubuntu package names):
10 1 Chris Cannam
11 3 Chris Cannam
<pre>
12 3 Chris Cannam
  libbz2-dev libfftw3-dev libfishsound1-dev libid3tag0-dev liblo-dev liblrdf0-dev
13 3 Chris Cannam
  libmad0-dev liboggz2-dev libpulse-dev libsamplerate-dev libsndfile-dev libsord-dev
14 3 Chris Cannam
  libxml2-utils portaudio19-dev qt5-default libqt5svg5-dev raptor-utils
15 4 Chris Cannam
  libasound2-dev libjack-dev librubberband-dev autoconf libtool git mercurial mlton
16 3 Chris Cannam
</pre>
17 5 Chris Cannam
18 5 Chris Cannam
We also need Cap'n Proto libraries v0.6 or above. For scripted builds we're in the habit of building Cap'n Proto from its Git repo.
19 5 Chris Cannam
20 6 Chris Cannam
We have "Travis CI builds":https://travis-ci.org/sonic-visualiser/sonic-visualiser set up, and the @.travis.yml@ file in the SV repo shows how these are run.
21 6 Chris Cannam
22 6 Chris Cannam
The Linux packages we distribute are "AppImages":https://appimage.org/. The script @deploy/linux/deploy-appimage.sh@ builds one on the current system, while the script @deploy/linux/build-and-test-appimage@ uses two Docker instances to build and test a portable AppImage (it is built on Ubuntu 14.04 and then we test that it can be started on Centos 7).