Building Dolphin on Linux

=Compile and build Dolphin on Linux= Dolphin is compatible with both 32 and 64 bit Linux distributions. Following instructions explain how to build dolphin on Linux using the cmake build system.

(This howto is based upon the outdated build instruction from the project wiki page)

Step 1 - install the correct dependencies
Ubuntu 12.04

Ubuntu 11.10

Other Linux version? If you run a distribution without aptitude, see the build dependencies in addendum A for a list of packages you'll need to install.

Step 2 - Get the Dolphin repository
Install git if you don't have this already.

Get a local copy of the dolphin-emu repository.

Change to the directory created.

Later, if you wish to update your local copy you run following command and proceed with the following steps.

Step 3 - Building Dolphin
Create a build subdirectory, and change into it.

Configure the build.

You may also want to change the install prefix by adding "-D CMAKE_INSTALL_PREFIX=/new/path". Note that this path does not need to be absolute. cmake will complete it to its absolute equivalent. The default prefix is "/usr". This means that the executable will be installed as "/usr/bin/dolphin-emu", the plugins will be installed into "/usr/lib/dolphin-emu", and the shared data files will be installed into "/usr/share/dolphin-emu". From here build and install in the standard make way.

Note that you may need superuser privileges for the last command. If you must insist on having the "local" build setup from the deprecated scons build you can configure the build with the following command.

Step 4 - Run Dolphin!
You can run dolphin from anywhere by typing:

If you changed the prefix and $prefix/bin is not in your path, then you will have to precede this with the path to the executable.

Addendum A - dependencies
This addendum lists the dependencies to build Dolphin.


 * Build Dependencies
 * git
 * cmake
 * g++
 * wx2.8-headers
 * libwxbase2.8-dev
 * libwxgtk2.8-dev
 * libgtk2.0-dev
 * nvidia-cg-toolkit
 * libbluetooth-dev (optional, for real wiimotes)
 * libxrandr-dev (optional, for switching desktop resolution in fullscreen mode)
 * libxext-dev
 * libreadline-dev
 * libasound-dev (optional, for alsa sound backend)
 * libpulse-dev (optional, for pulseaudio sound backend)
 * libao-dev (optional, for ao sound backend)
 * libopenal-dev (optional, for openal sound backend)
 * libavcodec-dev (optional, for dumping frames in AVI format)
 * libavformat-dev (optional, for dumping frames in AVI format)
 * libswscale-dev (optional, for dumping frames in AVI format)
 * libglew1.5-dev (optional, if not found will be built statically)
 * liblzo2-dev (optional, if not found will be built statically)
 * libsdl1.2-dev (optional, if not found will be built statically)
 * libsoil-dev (optional, if not found will be built statically)
 * libsfml-dev (optional, if not found will be built statically)