Building liquidsoap from source

Dependencies

You can choose which features you want to enable when building liquidsoap. If you use the -full tarball, each shipped feature can be enabled/disabled using the PACKAGE file.

Here are liquidsoap's dependencies (all OCaml libraries are distributed by Savonet, except when linked):

And also optional dependencies:

  • ocaml-ogg
  • ocaml-vorbis
  • ocaml-shout
  • ocaml-mad for mp3 decoding
  • ocaml-lame for mp3 encoding
  • ocaml-faac for AAC encoding
  • ocaml-faad for AAC stream decoding
  • ocaml-taglib for MP3 audio tag reading
  • ocaml-magic for file type detection
  • ocaml-xmlplaylist for XML-based playlist formats
  • ocaml-soundtouch for soundtouch audio effects
  • ocaml-lastfm and ocaml-xmllight for lastfm protocol support
  • camomile for detecting metadata encodings and re-encoding them to utf8
  • ocaml-alsa for ALSA input/output
  • ocaml-ao for AO I/O
  • ocaml-portaudio for Portaudio I/O
  • ocaml-bjack for Jack output/input
  • ocaml-ladspa for LADSPA plugins
  • ocaml-xmllight
  • libortp for experimental RTP input/output

Runtime dependencies include:

  • wget for downloading remote files (http, https, ftp)
  • ufetch (provided by ocaml-fetch) for downloading remote files (smb, http, ftp)
  • festival for speech synthesis (say)

And other that you'll find on the project page, or in liquidsoap-full tarball.

Building the source

From every sub-project's directory you can build and install the package using ./bootstrap, ./configure, make and optionally make install.

From the toplevel savonet directory you can also directly build a vanilla liquidsoap. It's fast and doesn't require you to install the libraries. The steps to follow are simple:

# Edit PACKAGES to choose which feature you want
./configure
make
# To install liquidsoap,
# you'll usually need to type the following as root
make install