Internet DJ Console Homepage IDJC

website logo

Deciding if this is a good idea

The following list contains valid reasons for going to the trouble of installing IDJC from source.

  • IDJC is absent from the repository.
  • The repository version is ancient but functional.
  • The repository version has features removed for fear of legal action.
  • The repository version has a minimum set of features generally.
  • The repository version is broken.

Removing old versions

It's a good idea to remove any old versions of IDJC at this point.

Installing dependencies

The following software is required to build IDJC or is used by IDJC at run-time. There should be similarly named binary packages in your package management system for all of these of which you typically want the library development packages whose names carry the -dev suffix.

Project nameVersionComment
Python2.6+, not 3Required—probably installed already
mutagen1.18+Required
Jack Audio Connection Kit0.116.0+Required—need library and server
PyGTK2.18+Required
vorbis-tools1.2.0+Required
libsndfile1.0.12+Required
libsamplerate0.1.4+Required
GLib22.0.0+Required
Lame3.97+Recommended—provides support for streaming/recording in the mp3 format
libmad0.15.1b+Recommended—provides support for mp3 playback
FFmpeg/libav0.5+Recommended—provides support for mp4/m4a,ape,mpc playback
FLAC1.1.3+Recommended—provides support for FLAC playback, recording, and streaming
speex1.2rc1+Recommended—provides support for speex playback and streaming
libshout2.2.2+Optional—for those who insist on not using the more featureful incorporated version—a sub-project of Icecast

For Ubuntu users, this command should be enough to satisfy all of the above.

$ sudo apt-get install build-essential libc6-dev libglib2.0-dev libjack-dev jackd libvorbis-dev libsamplerate0-dev libsndfile1-dev python-gtk2-dev libmad0-dev libavcodec-dev libavformat-dev libmp3lame-dev libflac-dev python-mutagen libspeex-dev

If during the execution of the above command you are asked whether to configure your system for JACK/realtime the sensible choice is yes.

Obtaining the IDJC source code

There are two options available to you. One is to get the official release (recommended), the other is to obtain the development sources, which are only casually tested.

Option 1: Obtaining the latest official release

Navigate to http://sourceforge.net/projects/idjc/.

Hit the big green Download button and wait for the download to finish. Make a note of the version number.

$ cd Downloads
$ tar xzvf idjc-[version].tar.gz
$ cd idjc-[version]/
Option 2: Obtaining the development sources
$ sudo apt-get install git-core autoconf libtool autopoint imagemagick
$ git clone git://idjc.git.sourceforge.net/gitroot/idjc/idjc
$ cd idjc/
$ ./env-up

Note the Ubuntu specific command for installing Git, which you will need to have installed.

The build process

$ ./configure CFLAGS="-O2"
$ make
$ sudo make install

For systems that don't have sudo configured, use the following form instead.

su -c "make install"

Finally

At this stage it's installed but see the First run section as further configuration is very likely needed.