Building Dolphin on Linux: Difference between revisions
Line 79: | Line 79: | ||
Here is [https://projects.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/dolphin-emu a PKGBUILD for the stable branch]. For the master branch, see [https://aur.archlinux.org/packages/do/dolphin-emu-git/PKGBUILD this PKGBUILD] (in pkgver=4.0.rxxxx.7222eb1 replace "xxxx" with the number of the desired revision). Other PKGBUILDs can be found on the [https://aur.archlinux.org/ Arch User Repository]. | Here is [https://projects.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/dolphin-emu a PKGBUILD for the stable branch]. For the master branch, see [https://aur.archlinux.org/packages/do/dolphin-emu-git/PKGBUILD this PKGBUILD] (in pkgver=4.0.rxxxx.7222eb1 replace "xxxx" with the number of the desired revision). Other PKGBUILDs can be found on the [https://aur.archlinux.org/ Arch User Repository]. | ||
== Addendum A | == Addendum A == | ||
This addendum lists the dependencies to build Dolphin. | This addendum lists the dependencies to build Dolphin. | ||
===Build Dependencies=== | |||
These packages must be installed before building Dolphin. | |||
* git | * git | ||
* cmake | * cmake | ||
* g++ | * g++ | ||
* wx2.9-headers (wx3.0-headers | * wx2.9-headers (wx3.0-headers recommended) | ||
* libwxbase2.8-dev | * libwxbase2.8-dev | ||
* libwxgtk2.8-dev | * libwxgtk2.8-dev | ||
* libgtk2.0-dev | * libgtk2.0-dev | ||
* libxext-dev | * libxext-dev | ||
* libreadline-dev | * libreadline-dev | ||
===Optional dependencies=== | |||
{| class="wikitable" | |||
! Package !! Service | |||
|- | |||
| libasound-dev | |||
| for alsa sound backend | |||
|- | |||
| libpulse-dev | |||
| for pulseaudio sound backend | |||
|- | |||
| libao-dev | |||
| for ao sound backend | |||
|- | |||
| libopenal-dev | |||
| for openal sound backend | |||
|- | |||
| libavcodec-dev | |||
| for dumping frames in AVI format | |||
|- | |||
| libavformat-dev | |||
| for dumping frames in AVI format | |||
|- | |||
| libswscale-dev | |||
| for dumping frames in AVI format | |||
|- | |||
| liblzo2-dev | |||
| if not found will be built statically | |||
|- | |||
| libsdl1.2-dev | |||
| if not found will be built statically | |||
|- | |||
| libsoil-dev | |||
| if not found will be built statically | |||
|- | |||
| libsfml-dev | |||
| if not found will be built statically | |||
|- | |||
| libbluetooth-dev | |||
| for real wiimotes | |||
|- | |||
| libxrandr-dev | |||
| for switching desktop resolution in fullscreen mode | |||
|} | |||
[[Category:Tutorials]] | [[Category:Tutorials]] |
Revision as of 14:14, 11 October 2014
Only binaries for Ubuntu-based distributions are available on Dolphin's download page, so users of other distros have to Dolphin from source. Dolphin is compatible with 64 bit Linux distributions. This is a guide to compiling Dolphin using the cmake build system.
If looking for help installing on Ubuntu-based distros, such as Linux Mint, Elementary OS, Zorin OS, Bodhi Linux, Deepin, Linux Lite, Pinguy OS, Kubuntu, Xubuntu, Lubuntu, Ubuntu GNOME, Edubuntu, Ubuntu Studio or Mythbuntu, see Installing Dolphin#Ubuntu.
Step 1 - Installing the Dependencies
Ubuntu
12.04 and newer
Install all necessary packages by running the following command:
sudo apt-get install cmake git g++ wx2.8-headers libwxbase2.8-dev libwxgtk2.8-dev libgtk2.0-dev libsdl1.2-dev libxrandr-dev libxext-dev libao-dev libasound2-dev libpulse-dev libbluetooth-dev libreadline-gplv2-dev libavcodec-dev libavformat-dev libswscale-dev libsdl2-dev libusb-1.0-0-dev
11.10
If you are still using such an old release, consider upgrading. Run the following to install the dependencies:
sudo apt-get install cmake git g++ wx2.8-headers libwxbase2.8-dev libwxgtk2.8-dev libgtk2.0-dev libsdl1.2-dev libxrandr-dev libxext-dev libao-dev libasound2-dev libpulse-dev libbluetooth-dev libreadline5-dev libavcodec-dev libavformat-dev libswscale-dev
Other Linux Distributions
If running a distribution without apt, 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 installed:
- for apt-based distros (eg Ubuntu, Debian, Linux Mint):
sudo apt-get install git
- for rpm-based distros (eg Red Hat, Fedora, SUSE):
sudo yum install git
- for pacman-based distros (eg Arch Linux):
sudo pacman -S git
Get a local copy of the dolphin-emu repository:
git clone https://github.com/dolphin-emu/dolphin.git dolphin-emu
Change to the directory created.
cd ./dolphin-emu
To update the local copy in the future without repeating the whole process, run git pull origin
within the dolphin-emu
directory and proceed to the following steps.
Step 3 - Building Dolphin
Create a build subdirectory, and change into it. The name Build is used in this example.
mkdir Build && cd Build
Configure the build.
cmake ..
Optionally you can 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 make install
.
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 by executing:
dolphin-emu
The same action can be done graphically from within some desktop environments, such as Unity's Dash menu on Ubuntu.
If the prefix was changed in step 3 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.
- I want a PKGBUILD!
Here is a PKGBUILD for the stable branch. For the master branch, see this PKGBUILD (in pkgver=4.0.rxxxx.7222eb1 replace "xxxx" with the number of the desired revision). Other PKGBUILDs can be found on the Arch User Repository.
Addendum A
This addendum lists the dependencies to build Dolphin.
Build Dependencies
These packages must be installed before building Dolphin.
- git
- cmake
- g++
- wx2.9-headers (wx3.0-headers recommended)
- libwxbase2.8-dev
- libwxgtk2.8-dev
- libgtk2.0-dev
- libxext-dev
- libreadline-dev
Optional dependencies
Package | Service |
---|---|
libasound-dev | for alsa sound backend |
libpulse-dev | for pulseaudio sound backend |
libao-dev | for ao sound backend |
libopenal-dev | for openal sound backend |
libavcodec-dev | for dumping frames in AVI format |
libavformat-dev | for dumping frames in AVI format |
libswscale-dev | for dumping frames in AVI format |
liblzo2-dev | if not found will be built statically |
libsdl1.2-dev | if not found will be built statically |
libsoil-dev | if not found will be built statically |
libsfml-dev | if not found will be built statically |
libbluetooth-dev | for real wiimotes |
libxrandr-dev | for switching desktop resolution in fullscreen mode |