2. Get Mixxx

If you want to compile Mixxx, you'll need to download the source code. Either grab the source for the latest release from our downloads page, or checkout a snapshot from our git repository: (See Using Git for more details & options.)

3. Compile and install

Once you have the source code, change to the newly created “mixxx” directory, and use scons to compile. As a regular user, do:

cd mixxx # To enter the repository.
scons

(scons -h shows a complete list of build flags if you'd like to customize.)

Multi-threaded build

If you have a multi-core CPU (or just multiple CPUs) use scons -j flag to specify the number of build threads to speed up building. Generally, use as many threads as you have cores. (Note that if you have a CPU with HyperThreading (which looks like two cores to the OS,) ignore the extra apparent one!)

So for example, if you have two dual-core CPUs for a total of four cores, just do: scons -j4

If you have two single-core HT CPUs, do: scons -j2 even though it looks like you have 4 cores. (You don't. Specifying more threads will only slow down the build.)

Build with m4a/AAC file support

m4a/AAC support will be built as a plugin, which you'll need to load with --pluginPath or by installing Mixxx (see below).

Build without shoutcast support

If you don't want shoutcast support, use scons shoutcast=0 flag.

Run or Install

If you want to just run this copy without installing, from the same directory, run:
(WARNING this uses and may overwrite user-wide configs)

./mixxx --resourcePath res/

To also run from a different settings Folder use:

./mixxx --resourcePath res/ --settingsPath /*The folder you like*/

If you want to install it system-wide, do:

sudo scons prefix=/usr install

If you are upgrading, it is recommended to first uninstall the previous version of mixxx with the following:

sudo scons -c install

before compiling as described above.

Strongly recommended: To optimize compilation for the CPU you're on if using GCC 4.2 and above, add tuned=1 to the list of scons options. To optimize for another CPU, use optimize=# where # is in the range 1-7:

Debian Squeeze on AMD64 jack/portaudio issues

So in Ubuntu the issue is solved for Lucid and later Releases (see Bug #360590)
In debian we still hafta wait for that. Portaudio is still compiled without jack support
on AMD64. So mixxx won't detect jack :/

Moving your working copy from one system to an other

If you happen to reinstall your system, or move your checkout to an other development system,
scons temp files may cause trouble in compilation, and giving false missing dependency information.
To avoid this clean out the scons temporary files with the next commands: