-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Compiling On An Asus Eeepc
These are the compile instructions for building Mixxx on an eeePC. They also work for (k)Ubuntu 7.10 and may also work for other Debian based linux distributions.
For Debian / Ubuntu, you can ignore the lines to do with editing your sources.list.
MIXXX_HOME=`pwd`
sudo aptitude purge mixxx mixxx-data # remove any potential conflicts with packaged versions
# eeePC-only: Add this to sources.list: deb http://http.us.debian.org/debian stable main contrib non-free
sudo aptitude install scons subversion libqt4-dev portaudio19-dev libmad0-dev libid3tag0-dev libvorbis-dev libsndfile1-dev g++
# eeePC-only: remove from sources.list or you may accidentally upgrade to Debian/Etch: deb http://http.us.debian.org/debian stable main contrib non-free
sudo aptitude update
# check out SVN work space for Linux
svn co https://mixxx.svn.sourceforge.net/svnroot/mixxx/trunk/mixxx mixxx
cd ${MIXXX_HOME}/mixxx
scons # build with default options
# create a symlink so mixxx can find skins/ and midi/ subdirs
sudo ln -s "${MIXXX_HOME}/mixxx/src" "/usr/local/share/mixxx"
# run it
./mixxx
** The block below is optional and only applies if you have a Hercules DJ Console Mk1/Mk2**
sudo aptitude install libusb-dev # libDJConsole needs this
## eeePC-only: start##
# apt-get/aptitude will remove libdjconsole*.deb during system updates, you'll need to reapply the last "dpkg --force-depends" step to get it back.
# libDJConsole stuff for Hercules Mk1/Mk2 support
wget http://http.us.debian.org/debian/pool/main/libd/libdjconsole/libdjconsole-dev_0.1.2-3_i386.deb
wget http://http.us.debian.org/debian/pool/main/libd/libdjconsole/libdjconsole0_0.1.2-3_i386.deb
wget http://http.us.debian.org/debian/pool/main/libd/libdjconsole/libdjconsole-data_0.1.2-3_all.deb
dpkg -i --force-depends libdjconsole-dev_*_i386.deb libdjconsole0_*_i386.deb libdjconsole-data_*_all.deb
## eeePC-only: end ##
## non-eeePC users can just 'sudo aptitude install libdjconsole0 libdjconsole-dev' instead of the eeePC-only section here.
cd ${MIXXX_HOME}
cd mixxx
scons djconsole=1
Seg Fault Note: You will get a segmentation fault when running mixxx after each recompile. This is caused by the UnionFS file system on the eeePC. A reboot will allow you to run mixxx normally.
Performance Note: eeePCs should be configured to use slow-mixxx
to
bump up the processing priority for reliable skip-free playback. Or get
the eee.ko kernel module to re-clock the CPU from 600Mhz -> 900Mhz.
#!/bin/bash
# slow-mixxx by ironstorm@users.sf.net 2008.01.17
# a script to start mixxx and renice it.
#
# Why we do it this way:
# i. Must 'renice' after starting but before audio playback begins.
# ii. Starting with 'nice' causes sound crackles on the eeePC
# iii. 'renice during playback causes skips and crackles on eeePC.
# An stock eeePC runs at 630Mhz and needs nice priority of between -15 to -20 to playback with mimimal skipping, faster PCs can likely run at lesser priorities
nice_priority=-18
(sudo sleep 3; sudo renice ${nice_priority} `ps -C mixxx -o pid | grep -v PID`)& mixxx
Mixxx is a free and open-source DJ software.
Manual
Hardware Compatibility
Reporting Bugs
Getting Involved
Contribution Guidelines
Coding Guidelines
Using Git
Developer Guide
Creating Skins
Contributing Mappings
Mixxx Controls
MIDI Scripting
Components JS
HID Scripting