This shows you the differences between two versions of the page.
|
compiling_on_linux [2012/04/26 16:53] mbochon |
compiling_on_linux [2013/06/11 23:31] (current) rryan Update from bzr to git. |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | Compiling Mixxx is fairly straightforward on Linux. The steps below outline what a user needs to do in order to compile Mixxx for themselves, if for instance, they wanted to try the latest changes in our code repository (BZR). | + | ====== Compiling on Linux ====== |
| + | |||
| + | Compiling Mixxx is fairly straightforward on Linux. The steps below outline what to do in order to compile Mixxx. | ||
| ===== 1. Install build dependencies ===== | ===== 1. Install build dependencies ===== | ||
| - | Mixxx relies on several external libraries for various features. If your distribution is Debian based (such as Ubuntu), you can install them by running: | + | Mixxx relies on several external libraries for various features. |
| + | |||
| + | ==== Debian / Ubuntu ==== | ||
| + | |||
| + | If your distribution is Debian based (such as Ubuntu), you can install them by running: | ||
| <code> | <code> | ||
| sudo apt-get build-dep mixxx | sudo apt-get build-dep mixxx | ||
| - | sudo apt-get install bzr scons libqt4-dev libqt4-sql-sqlite libportmidi-dev libshout-dev libtag1-dev libprotobuf-dev protobuf-compiler vamp-sdk2 vamp-plugin-sdk libusb-dev | + | sudo apt-get install git scons libqt4-dev libqt4-sql-sqlite libportmidi-dev libshout-dev libtag1-dev libprotobuf-dev protobuf-compiler libvamp-hostsdk3 vamp-plugin-sdk libusb-1.0-0-dev libfftw3-dev libchromaprint-dev |
| sudo apt-get install libfaad-dev libmp4v2-dev # required for M4A support | sudo apt-get install libfaad-dev libmp4v2-dev # required for M4A support | ||
| </code> | </code> | ||
| + | |||
| + | ==== Fedora ==== | ||
| On Fedora 13 and 14, you need enable rpmfusion repo and then: | On Fedora 13 and 14, you need enable rpmfusion repo and then: | ||
| Line 16: | Line 24: | ||
| su | su | ||
| yum groupinstall "Development Tools" | yum groupinstall "Development Tools" | ||
| - | yum install scons bzr alsa-lib-devel qt4-devel libGL-devel libGLU-devel \ | + | yum install scons git alsa-lib-devel qt4-devel libGL-devel libGLU-devel \ |
| libid3tag-devel libmad-devel libmp4v2-devel libsndfile-devel libvorbis-devel \ | libid3tag-devel libmad-devel libmp4v2-devel libsndfile-devel libvorbis-devel \ | ||
| portaudio-devel libshout-devel python-devel portmidi-devel qt-webkit-devel taglib-devel flac-devel \ | portaudio-devel libshout-devel python-devel portmidi-devel qt-webkit-devel taglib-devel flac-devel \ | ||
| protobuf-devel vamp-plugin-sdk-devel | protobuf-devel vamp-plugin-sdk-devel | ||
| </code> | </code> | ||
| + | |||
| + | ==== Other ==== | ||
| For other distributions, you will need to install the following through your distribution's package manager: | For other distributions, you will need to install the following through your distribution's package manager: | ||
| Line 41: | Line 51: | ||
| ===== 2. Get Mixxx ===== | ===== 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 [[http://www.mixxx.org/download.php|downloads page]], or checkout a snapshot from BZR: (See [[Using Bazaar]] for more details & options.) | + | If you want to compile Mixxx, you'll need to download the source code. Either grab the source for the latest release from our [[http://www.mixxx.org/download.php|downloads page]], or checkout a snapshot from our git repository: (See [[Using Git]] for more details & options.) |
| - | * For the latest stable release: ''bzr checkout lp:mixxx/1.10'' | + | * For the latest stable branch: ''git clone -b 1.11 https://github.com/mixxxdj/mixxx.git'' |
| - | * For trunk: ''bzr checkout lp:mixxx'' | + | * For the master branch: ''git clone https://github.com/mixxxdj/mixxx.git'' |
| ===== 3. Compile and install ===== | ===== 3. Compile and install ===== | ||
| - | If you got the source code from BZR, change to the newly created "mixxx" directory, and use scons to compile. As a regular user, do: | + | Once you have the source code, change to the newly created "mixxx" directory, and use scons to compile. As a regular user, do: |
| <code> | <code> | ||
| - | cd 1.10 # or cd mixxx if you downloaded trunk | + | cd mixxx # To enter the repository. |
| - | cd mixxx # (again) | + | cd mixxx # (again) to enter the mixxx folder within the repository |
| scons | scons | ||
| </code> | </code> | ||
| (scons -h shows a complete list of build flags if you'd like to customize.) | (scons -h shows a complete list of build flags if you'd like to customize.) | ||
| + | |||
| ==== Multi-threaded build ==== | ==== Multi-threaded build ==== | ||
| Line 75: | Line 86: | ||
| If you want to just run this copy without installing, from the same directory, run: | If you want to just run this copy without installing, from the same directory, run: | ||
| + | (WARNING this uses and may overwrite user-wide configs) | ||
| <code> | <code> | ||
| ./mixxx --resourcePath res/ | ./mixxx --resourcePath res/ | ||
| </code> | </code> | ||
| + | |||
| + | To also run from a different settings Folder use: | ||
| + | |||
| + | <code> | ||
| + | ./mixxx --resourcePath res/ --settingsPath /*The folder you like*/ | ||
| + | </code> | ||
| + | |||
| If you want to install it system-wide, do: | If you want to install it system-wide, do: | ||
| Line 102: | Line 121: | ||
| If you wanted to update later to a newer snapshot, you would go back to the mixxx directory and run: | If you wanted to update later to a newer snapshot, you would go back to the mixxx directory and run: | ||
| - | <code>bzr update</code> | + | <code>git pull</code> |
| ===== Troubleshooting ===== | ===== Troubleshooting ===== | ||
| Line 191: | Line 210: | ||
| * [[Compiling on an Asus eeePC]] | * [[Compiling on an Asus eeePC]] | ||
| * [[Mixxx on Fedora]] | * [[Mixxx on Fedora]] | ||
| + | * [[eclipse]] | ||
| + | * [[QtCreator]] | ||