The Emulation Realm

Dolphin (Source)

Dolphin (Source)
01 March 2022
153 x

Dolphin is a Gamecube and Wii emulator. Most games run perfectly or with minor bugs. Games are playable at HD quality, up to 1080p.


Step 1 - Installing the Dependencies


Follow the steps below only if you like to make your own package or use a specific git commit version. There's a PPA with Dolphin already built, easy to use.

18.04 LTS and up

Follow this step for Ubuntu 18.04 LTS and later. It probably also works for Debian GNU/Linux 10.
Install all necessary packages by running the following command:

sudo apt install --no-install-recommends ca-certificates qtbase5-dev qtbase5-private-dev git cmake make gcc g++ pkg-config libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libxi-dev libxrandr-dev libudev-dev libevdev-dev libsfml-dev libminiupnpc-dev libmbedtls-dev libcurl4-openssl-dev libhidapi-dev libsystemd-dev libbluetooth-dev libasound2-dev libpulse-dev libpugixml-dev libbz2-dev libzstd-dev liblzo2-dev libpng-dev libusb-1.0-0-dev gettext

Add -DUSE_SHARED_ENET=ON on cmake line if you want to build Dolphin against shared libenet-dev.


Quick method for Fedora 24 and later.


These dependencies must be installed.

dnf install cmake git gcc-c++ libXext-devel libgudev qt5-devel systemd-devel openal-soft-devel libevdev-devel libao-devel SOIL-devel libXrandr-devel pulseaudio-libs-devel bluez-libs-devel libusb-devel 

The following dependencies are best from RPM Fusion and may not be provided in Fedora repos.

dnf install ffmpeg ffmpeg-devel

Other Linux Distributions

If running another distribution, 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 install git
  • for rpm-based distros (eg Red Hat, Fedora): su -c 'dnf install git'
  • for openSUSE: sudo zypper in git
  • for pacman-based distros (eg Arch Linux): sudo pacman -S git

Get a local copy of the dolphin-emu repository:

git clone dolphin-emu

Change to the directory created.

cd ./dolphin-emu

Pull the git submodules.

git submodule update --init

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.

For building the current stable (5.0) instead of the most current development build; run the following command

git checkout tags/5.0

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. Note that in some cases you will need to configure in the dolphin-emu directory in stead of the build directory.

cmake ..

If you are using a different gcc version (7 on Ubuntu 16.04 for example), you'll need to overwrite some flags:


You can compile with clang too:

cmake .. -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_CXX_FLAGS=-stdlib=libc++

Note that you will have to add libc++-dev and libc++abi-dev as dependence in this case. Clang minimum version is 3.4. Use SFML and pugixml from Externals/ (the latter is only necessary for 5.0-7026 and later), otherwise you'll get some undefined references.

Optionally you can change the install prefix by adding "-DCMAKE_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 -j$(nproc)

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:


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.

Powered by Phoca Download