Krad Radio/Building

From MozillaWiki
Jump to: navigation, search

Platform Support

Known Working

Currently Krad Radio is known to build on the following platforms:

  • Arch Linux
  • Backtrack Linux 5 revision 3
  • Debian 7.0 "wheezy"
  • Ubuntu

Some Assembly Required

The following platforms are currently problematic but likely will build with some effort:

  • CentOS 6.4 amd64
  • CentOS 6.4 x86
  • Debian Linux 6.0 "squeeze" amd64
  • Debian Linux 6.0 "squeeze" x86

Project Dependencies

Required Dependencies

  • libcairo
  • libtheora
  • libvpx
  • libflac
  • libopus
  • libvorbis
  • libswscale
  • libsamplerate
  • libxmmsclient
  • libasound2
  • libjack
  • libjpeg-turbo

For ease of copy/paste aptitude users may issue:

sudo aptitude install libcairo2-dev libtheora0 libtheora-dev libvpx-dev libflac8 libflac-dev libopus0 libopus-dev libvorbis0a libvorbis-dev libswscale-dev libsamplerate0 libsamplerate0-dev libxmmsclient6 libxmmsclient-dev libasound2 libasound2-dev libjpeg-turbo8 libjpeg-turbo8-dev libswscale-dev libjack-jackd2-dev libgtk-3-dev libwayland-dev libgif-dev

Optional Dependencies

Getting the Source Code

The Krad Radio project source can be obtained via the official project github:

git clone https://github.com/krad-radio/krad_radio.git

Building the Source Code

Krad Radio uses autotools:

./autogen

./configure

Possible configuration flags include:

  • --optimize

Provided all the dependencies have been met and the project has been configured for building it can be built by issuing:

make

Installation can be performed after compilation by issuing:

sudo make install

General Pitfalls

  • libjpeg-turbo is not available as a package on some distrobutions and will have to be compiled from source. When making use make prefix=/usr/local libdir=/usr/local/lib to ensure the development libraries are properly installed when compiling from source.

Platform-specific Pitfalls

Debian 6.0

  • The default Debian 6.0 installation does not include support for Video4Linux2. The only known workarounds for this are manually removing V4L2 functionality from the source or compiling a new kernel which includes V4L2 support.

CentOS 6

  • CentOS 6 lacks some of the packages required to build; these packages will have to be built from source instead.