Building Dolphin on Linux: Difference between revisions

From Dolphin Emulator Wiki
Jump to navigation Jump to search
(Some phrasing changes in the non-technical portions.)
(Adjust phrasing using "you")
Line 1: Line 1:


Despite not being listed on the main site, Dolphin is readily available for Linux. You just have to build it yourself. Dolphin is fully compatible with both 32 and 64 bit Linux distributions, so as long as it is Linux, you're good. Here's how to do it, using the cmake build system.
Despite not being listed on the main site, Dolphin is readily available for Linux, but it must be compiled oneself. Dolphin is fully compatible with both 32 and 64 bit Linux distributions. Here's how to do it, using the cmake build system.


(This howto is based upon the outdated build instruction from the [http://code.google.com/p/dolphin-emu/wiki/Linux_Build project wiki page])
(This howto is based upon the outdated build instruction from the [http://code.google.com/p/dolphin-emu/wiki/Linux_Build project wiki page])
Line 13: Line 13:


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


== Step 2 - Get the Dolphin Repository ==
== Step 2 - Get the Dolphin Repository ==
Install git if you don't have this already.<br/>
Install git if it's not already.<br/>
<code>sudo apt-get install git</code>
<code>sudo apt-get install git</code>


Line 25: Line 25:
<code>cd dolphin-emu</code>
<code>cd dolphin-emu</code>


Later, if you wish to update your local copy you run following command and proceed with the following steps.<br/>
Later, to update the local copy run following command and proceed with the following steps.<br/>
<code>git pull origin</code>
<code>git pull origin</code>


Line 35: Line 35:
<code>cmake ..</code>
<code>cmake ..</code>


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".<br/>
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".<br/>
<br/>
<br/>
From here build and install in the standard make way.<br/>
From here build and install in the standard make way.<br/>
<code>make</code><br>
<code>make</code><br/>
<code>sudo make install</code>
<code>sudo make install</code>


Note that you need superuser privileges for the last command.<br/>
Note that superuser privileges are needed for the last command.<br/>
<br/>
<br/>
If you must insist on having the "local" build setup from the deprecated scons build you can configure the build with the following command.<br/>
To have the "local" build setup from the deprecated scons build configure the build with the following command.<br/>
<code>cmake -Dbindir=../Binary/Linux -Ddatadir=../Binary/Linux  ..</code>
<code>cmake -Dbindir=../Binary/Linux -Ddatadir=../Binary/Linux  ..</code>


== Step 4 - Run Dolphin! ==
== Step 4 - Run Dolphin! ==
You can run dolphin from anywhere by typing:<br/>
Run dolphin from anywhere by typing:<br/>
<code>dolphin-emu</code>
<code>dolphin-emu</code>


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.
If the prefix changed and $prefix/bin is not in the path, then precede this with the path to the executable.


== FAQ ==
== FAQ ==


'''Where can I get help?'''<br>
'''Where can I get help?'''<br/>
Go to the [http://forums.dolphin-emulator.com/ forums]. Lots of Dolphin users use Linux, and they are very experienced with this process.
Go to the [http://forums.dolphin-emulator.com/ forums]. Lots of Dolphin users use Linux, and they are very experienced with this process.
<br>
<br/>


'''My build failed, but I did nothing wrong!''' <br>
'''My build failed, but I did nothing wrong!'''<br/>
Most of the time, any problems in the build process are user error. It's understandable, it is a complicated process and can be quite daunting for a first timer. But sometimes you'll do everything right, triple checked, and it's still not working. It's rare, but sometimes a build will just be bugged. But many of Dolphin devs are Linux users, so just wait a day or so, and it will be sorted out.
Most of the time, any problems in the build process are due to user error. It's understandable, it is a complicated process and can be quite daunting for a first timer. But sometimes even with everything right, triple checked, and it's still not working. It's rare, but sometimes a build will just be bugged. But many of Dolphin devs are Linux users, so just wait a day or so, and it will be sorted out.





Revision as of 16:32, 12 August 2012

Despite not being listed on the main site, Dolphin is readily available for Linux, but it must be compiled oneself. Dolphin is fully compatible with both 32 and 64 bit Linux distributions. Here's how to do it, 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
sudo apt-get install cmake git g++ wx2.8-headers libwxbase2.8-dev libwxgtk2.8-dev libgtk2.0-dev libsdl1.2-dev nvidia-cg-toolkit libxrandr-dev libxext-dev libglew1.5-dev libao-dev libasound2-dev libpulse-dev libbluetooth-dev libreadline-gplv2-dev libavcodec-dev libavformat-dev libswscale-dev

Ubuntu 11.10
sudo apt-get install cmake git g++ wx2.8-headers libwxbase2.8-dev libwxgtk2.8-dev libgtk2.0-dev libsdl1.2-dev nvidia-cg-toolkit libxrandr-dev libxext-dev libglew1.5-dev libao-dev libasound2-dev libpulse-dev libbluetooth-dev libreadline5-dev libavcodec-dev libavformat-dev libswscale-dev

Other Linux version?
If running a distribution without aptitude, see the build dependencies in addendum A for a list of packages needed to install.

Step 2 - Get the Dolphin Repository

Install git if it's not already.
sudo apt-get install git

Get a local copy of the dolphin-emu repository.
git clone https://code.google.com/p/dolphin-emu/ dolphin-emu

Change to the directory created.
cd dolphin-emu

Later, to update the local copy run following command and proceed with the following steps.
git pull origin

Step 3 - Building Dolphin

Create a build subdirectory, and change into it.
mkdir Build && cd Build

Configure the build.
cmake ..

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.
make
sudo make install

Note that superuser privileges are needed for the last command.

To have the "local" build setup from the deprecated scons build configure the build with the following command.
cmake -Dbindir=../Binary/Linux -Ddatadir=../Binary/Linux ..

Step 4 - Run Dolphin!

Run dolphin from anywhere by typing:
dolphin-emu

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

FAQ

Where can I get help?
Go to the forums. Lots of Dolphin users use Linux, and they are very experienced with this process.

My build failed, but I did nothing wrong!
Most of the time, any problems in the build process are due to user error. It's understandable, it is a complicated process and can be quite daunting for a first timer. But sometimes even with everything right, triple checked, and it's still not working. It's rare, but sometimes a build will just be bugged. But many of Dolphin devs are Linux users, so just wait a day or so, and it will be sorted out.


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)