What's new? | Help | Directory | Sign in
Google
                
Search
for
Updated Jan 04 (4 days ago) by nakeee
Labels: Build
Linux_dependencies  
How to build dolphin on Linux

Introduction

Dolphin runs on 32 and 64bit linux distributions, provided you have the correct dependencies installed. I used Ubuntu 8.04.1 amd64 to compile, so the following instructions are using apt-get. If you run a distribution without aptitude, see Details for a list of packages you will need to install.

Instructions

Just copy and paste this into a terminal, and you should be good to go. If you have problems with scons, see below.

sudo apt-get install subversion scons g++ wx2.8-headers libwxbase2.8-0 libwxbase2.8-dbg libwxbase2.8-dev libwxgtk2.8-0 libwxgtk2.8-dbg libwxgtk2.8-dev libsdl1.2-dev nvidia-cg-toolkit libxxf86vm1-dbg libxxf86vm-dev libxext6-dbg libxext-dev libglew1.5-dev libcairo2-dbg libcairo2-dev libao2 libao-dev libbluetooth-dev && svn checkout http://dolphin-emu.googlecode.com/svn/trunk/ dolphin-emu-read-only && cd dolphin-emu-read-only && scons

To run dolphin do:

cd Binary/Linux-* && ./Dolphin

When you use Dolphin for the first time, you can select the plugins in the config window.

Getting a compatible version of scons

Since r599, scons version >= 0.98 has been required to build dolphin. Some distributions do not yet have this in their repositories, so you'll have to get it yourself:

Go to http://sourceforge.net/project/showfiles.php?group_id=30337&package_id=22359 and get the .tar.gz package. In this example, I got scons-1.1.0.tar.gz.

tar -xvf scons-1.1.0.tar.gz && cd scons* && sudo python setup.py install

now you can go to your dolphin directory and run scons.

Details

Required packages:


Comment by klaoslacerda, Jul 24, 2008

How compile Dolphin source with linux?

Comment by prismsub7, Jul 24, 2008

All commando's needed are:

'sudo apt-get install subversion scons g++ wx2.8-headers libwxbase2.8-0 libwxbase2.8-dbg libwxbase2.8-dev libwxgtk2.8-0 libwxgtk2.8-dbg libwxgtk2.8-dev libsdl1.2-dev nvidia-cg-toolkit libxxf86vm1-dbg libxxf86vm-dev libxext6-dbg libxext-dev libglew1.5-dev libcairo2-dbg libcairo2-dev'

'svn checkout http://dolphin-emu.googlecode.com/svn/trunk/ dolphin-emu-read-only'

'cd dolphin-emu-read-only'

'scons'

Comment by klaoslacerda, Jul 24, 2008

Thank you

Comment by hrydgard, Jul 25, 2008

Awesome work guys. Keep truckin' :)

I'll port the JIT to linux as soon as I can.

Comment by ccna.syl, Jul 26, 2008

Hello guys

I have got a question. If you use the nvidia-cg-toolkits does this software will works with ati or intel chips ?

Does this dependency is very important because the nvidia-cg-toolkits don t exist on BSD systems that have their own drm driver for graphic card. This software should be interesting for the BSD community :)

Thanks for you response

Comment by hrydgard, Jul 27, 2008

CG is used only to compile shaders.

Comment by tmator, Jul 28, 2008

Hi,

is someone compile dolphin on mac osx ?

Comment by skarmiglione.sk4r, Jul 29, 2008

so slow, is not compared with x64 xp version yet

Comment by hrydgard, Jul 30, 2008

yeah yeah patience, I will fix the jit in linux someday, probably fairly soon :P

Comment by vladimircamilomejia, Jul 30, 2008

The emu compiles fine on ubuntu 8.04 but its too slow, we need explote the openGl potential on linux...its just matter of time, great work guys, thanks.

Comment by skarmiglione.sk4r, Jul 30, 2008

yeah!! great work, so much thanks. are we waiting :P.

Comment by skarmiglione.sk4r, Aug 03, 2008

(0) : fatal error C9999: exception during compilation Cg compiler terminated due to fatal error when start zelda great work are the best modernemu

Comment by vladimircamilomejia, Aug 11, 2008

(0) : fatal error C9999: exception during compilation Cg compiler terminated due to fatal errorFallo de segmentación

Compiled from revision 179 on ubuntu 8...

Comment by anders1, Aug 11, 2008

same errors happen here as well, revision 179

Comment by gnuraziel, Aug 12, 2008

Hi,

I tried R179 on Linux x86 system and it compile fine but when i launch a game it crash...The only output is this, not related I think :

(Dolphin:10822): Gtk-WARNING : /build/buildd/gtk+2.0-2.12.9/gtk/gtkwidget.c:8547: widget class GtkPizza?' has no property named row-ending-details'

An OpenGL initialisation problem probably, is there a way to fix it ?

Comment by vladimircamilomejia, Aug 12, 2008

(Dolphin:10068): Gtk-WARNING : /build/buildd/gtk+2.0-2.12.9/gtk/gtkwidget.c:8547: widget class GtkPizza' has no property named row-ending-details' (0) : fatal error C9999: exception during compilation Cg compiler terminated due to fatal error(0) : fatal error C9999: exception during compilation Cg compiler terminated due to fatal error

revision 181 on ubuntu 8 x64 amd64

Comment by anders1, Aug 13, 2008

Someone on IRC told me how to fix this problem, for now. You need to edit your Dolphin.ini, set OptimizeQuantizers? to False and it should run :)

Comment by skarmiglione.sk4r, Aug 14, 2008

http://www.khronos.org/opengl/ new version of opengl v3.0

Comment by marihuanalegal, Aug 15, 2008

i edited the dolphin.ini and doesnt work.

Comment by gnuraziel, Aug 20, 2008

I've builded R243 today on Debian Lenny X86_64 : Build complete (with MANY warnings) GUI launch fine Tested 3 games : ZWW PAL : See Nintendo logo, then Sound logo and crash ZTP NTSC : Cannot pass the first screen, no input detected it seems LM NTSC : crash before viewing anything Always the same error : (0) : fatal error C9999: exception during compilation

You can find the full log here : http://pastebin.com/f6108ea3b You can find the R243 here : http://www.filefactory.com/file/a3cfc4/n/Dolphin-X86_64-Release_243_tar_bz2

Comment by knuckles500, Aug 21, 2008

I got it to compile, and run, but here are the list of problems I noticed for REV253: 1.) There's a sound plugin but it doesn't output sound via ALSA 2.) Keyboard/360 Control plugin doesn't work, but njoy does. However, you need to have a joystick controller plugged in (I recommend the PS2 controller, which seems to work when the Analog light is on) 3.) OpenGL Plugin cannot view 3D models at all, however most 2d screens work. If there are massive amount of 3D (WW, for example) that load for a title screen, Dolphin will crash. 4.) Dual core just ruins everything, don't enable it

That's just a basic run down. So in other words, this isn't worth it yet. However, I hope we can get somebody who can do pure linux work for Dolphin soon. :)

Comment by knuckles500, Aug 21, 2008

And of course, this is all on amd64 with the same specs as my Windows XP Pro x64 reports. Changing OptimizeQuantizers? to False doesn't make a difference to me.

Comment by gnuraziel, Aug 21, 2008

R254 to 256 do not build under GNU/Linux X86_64, here the error part of R256 :

http://pastebin.com/f58aa56e3

Comment by gnuraziel, Aug 21, 2008

May I add that even with default CC flags (in SConstruct) it do not build, not ralated to my CC tweak.

Comment by gnuraziel, Aug 22, 2008

R267 to 272 still do not build under GNU/Linux X86_64, here the error log of R272 :

http://pastebin.com/f16a85552

Comment by gnuraziel, Aug 23, 2008

R275 to 278 build fine on X86_64 system, R279 have JIT error :

g++ -o Source/Core/Core/Src/PowerPC/Jit64/Jit.o -c -g -O3 -fno-strict-aliasing -fPIC -msse2 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wall -Wwrite-strings -Wfloat-equal -Wshadow -Wpointer-arith -Wpacked -Wno-conversion -g -O3 -fno-strict-aliasing -fPIC -msse2 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wall -Wwrite-strings -Wfloat-equal -Wshadow -Wpointer-arith -Wpacked -Wno-conversion -ISource/Core/Common/Src -ISource/Core/DiscIO/Src -ISource/PluginSpecs? -ISource -ISource/Core/Core/Src -ISource/Core/DebuggerWX/src -IExternals/Bochs_disasm -ISource/Core/VideoCommon?/Src Source/Core/Core/Src/PowerPC/Jit64/Jit.cpp Source/Core/Core/Src/PowerPC/Jit64/Jit.cpp: In function 'void Jit64::Init()': Source/Core/Core/Src/PowerPC/Jit64/Jit.cpp:239: error: 'Core' has not been declared scons: [Source/Core/Core/Src/PowerPC/Jit64/Jit.o] Error 1 scons: building terminated because of errors.

Comment by gnuraziel, Aug 23, 2008

Thx to Sonicadvance1 we're back with R280 :)

Comment by knuckles500, Aug 26, 2008

OpenGL plugin won't compile now: g++ -o Binary/linux/Plugins/libzeroogl.so wx-config --libs pkg-config --libs xxf86vm -shared Source/Plugins/Plugin_VideoOGL/Src/BPStructs.os Source/Plugins/Plugin_VideoOGL/Src/DataReader?.os Source/Plugins/Plugin_VideoOGL/Src/Globals.os Source/Plugins/Plugin_VideoOGL/Src/GLInit.os Source/Plugins/Plugin_VideoOGL/Src/main.os Source/Plugins/Plugin_VideoOGL/Src/memcpy_amd.os Source/Plugins/Plugin_VideoOGL/Src/OpcodeDecoding?.os Source/Plugins/Plugin_VideoOGL/Src/PixelShader?.os Source/Plugins/Plugin_VideoOGL/Src/PixelShaderManager?.os Source/Plugins/Plugin_VideoOGL/Src/rasterfont.os Source/Plugins/Plugin_VideoOGL/Src/Render.os Source/Plugins/Plugin_VideoOGL/Src/TextureMngr?.os Source/Plugins/Plugin_VideoOGL/Src/VertexLoader?.os Source/Plugins/Plugin_VideoOGL/Src/VertexLoader_Normal?.os Source/Plugins/Plugin_VideoOGL/Src/VertexShader?.os Source/Plugins/Plugin_VideoOGL/Src/VertexShaderManager?.os Source/Plugins/Plugin_VideoOGL/Src/XFB.os Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg?.os -LSource/Core/Common/Src -LSource/Core/DiscIO/Src -LSource/PluginSpecs? -LSource -LSource/Core/Core/Src -LSource/Core/DebuggerWX/src -LExternals/Bochs_disasm -LSource/Core/VideoCommon?/Src -lvideocommon -lcommon -lGLEW -ljpeg -lGL -lCg -lCgGL -lX11 /usr/bin/ld: cannot find -ljpeg collect2: ld returned 1 exit status scons: [Binary/linux/Plugins/libzeroogl.so] Error 1 scons: building terminated because of errors.

Am I compiling in the middle of something?

Comment by gnuraziel, Aug 27, 2008

You miss libjpeg, check if you have it by doing this :

locate libjpeg.so | head -n 3

Comment by knuckles500, Aug 27, 2008

I have it: /usr/lib/libjpeg.so.62 /usr/lib/libjpeg.so.62.0.0 /usr/lib/jvm/java-6-openjdk/jre/lib/amd64/libjpeg.so

Comment by gnuraziel, Aug 28, 2008

To XTra.KrazzY :

YES, it break build under Linux :

http://pastebin.com/f2b6e7309

Comment by gnuraziel, Aug 28, 2008

To XTra.KrazzY :

Still broken, R371 :

http://pastebin.com/f66b5bdf3

Comment by gnuraziel, Aug 28, 2008

Build fixed with R372 ^^

Comment by skarmiglione.sk4r, Sep 01, 2008

howto configure controller plugin? please make it easy.

Symbol DllDebugger? missing in Plugins/libdsphle.so (error: Plugins/libdsphle.so: undefined symbol: DllDebugger?) ALSA lib pcm_dmix.c:874:(snd_pcm_dmix_open) unable to open slave ALSA snd_pcm_open error: Dispositivo ó recurso ocupado Error opening device. Couldn't open Joystick 0

Comment by R.Shargh, Sep 19, 2008

I compiled it, but there ist noch GFX-Plugin to choose. Can anyone help me?

Comment by R.Shargh, Sep 19, 2008

when i compile again it says:

g++ -o Binary/linux/Plugins/libzeroogl.so wx-config --libs pkg-config --libs xxf86vm -shared Source/Plugins/Plugin_VideoOGL/Src/BPStructs.os Source/Plugins/Plugin_VideoOGL/Src/DataReader?.os Source/Plugins/Plugin_VideoOGL/Src/Globals.os Source/Plugins/Plugin_VideoOGL/Src/GLInit.os Source/Plugins/Plugin_VideoOGL/Src/main.os Source/Plugins/Plugin_VideoOGL/Src/memcpy_amd.os Source/Plugins/Plugin_VideoOGL/Src/OpcodeDecoding?.os Source/Plugins/Plugin_VideoOGL/Src/PixelShader?.os Source/Plugins/Plugin_VideoOGL/Src/PixelShaderManager?.os Source/Plugins/Plugin_VideoOGL/Src/rasterfont.os Source/Plugins/Plugin_VideoOGL/Src/Render.os Source/Plugins/Plugin_VideoOGL/Src/TextureMngr?.os Source/Plugins/Plugin_VideoOGL/Src/VertexLoader?.os Source/Plugins/Plugin_VideoOGL/Src/VertexLoader_Normal?.os Source/Plugins/Plugin_VideoOGL/Src/VertexShader?.os Source/Plugins/Plugin_VideoOGL/Src/VertexShaderManager?.os Source/Plugins/Plugin_VideoOGL/Src/XFB.os Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg?.os -LSource/Core/Common/Src -LSource/Core/DiscIO/Src -LSource/PluginSpecs? -LSource -LSource/Core/Core/Src -LSource/Core/DebuggerWX/src -LExternals/Bochs_disasm -LExternals/LZO -LSource/Core/VideoCommon?/Src -lvideocommon -lcommon -lGLEW -lGL -lCg -lCgGL -lX11 /usr/bin/ld: cannot find -lGL collect2: ld returned 1 exit status scons: [Binary/linux/Plugins/libzeroogl.so] Error 1 scons: building terminated because of errors.

Comment by tatsh2dx, Sep 23, 2008

Builds but it I get the same error as above, programme can still run. Have not tried any games yet.

Comment by vins8...@hotmail.com, Sep 30, 2008

the compilation in broken in rev 737 I'm using ubuntu 8.10 x86_64 this is the terminal log

Compiling Source/Core/VideoCommon?/Src/Fifo.o Source/Core/VideoCommon?/Src/Fifo.cpp: In function 'u32 FAKE_GetFifoStartPtr?()': Source/Core/VideoCommon?/Src/Fifo.cpp:58: error: cast from 'u8' to 'int' loses precision Source/Core/VideoCommon?/Src/Fifo.cpp: In function 'int FAKE_GetFifoEndAddr?()': Source/Core/VideoCommon?/Src/Fifo.cpp:71: error: cast from 'u8' to 'int' loses precision Source/Core/VideoCommon?/Src/Fifo.cpp: In function 'int FAKE_GetRealPtr?()': Source/Core/VideoCommon?/Src/Fifo.cpp:101: error: cast from 'u8' to 'int' loses precision Source/Core/VideoCommon?/Src/Fifo.cpp: In function 'void Video_SendFifoData?(u8)': Source/Core/VideoCommon?/Src/Fifo.cpp:133: error: cast from 'u8' to 'u32' loses precision scons: [Source/Core/VideoCommon?/Src/Fifo.o] Error 1 scons: building terminated because of errors.

Comment by serralessandro, Oct 02, 2008

I recompiled the latest svn sources on opensuse 64 bit i tried to run twilight princess and it runs almost perfectly the graphics is fine and quite fast sound does not work at all with any of the plugins tried to change my sound system to oss and alsa, but in both cases no success. and full screen graphics does not work my cpu is an intel core2 duo and my gpu is a nvidia 7300 gt the game will not start if i choose the dual core mode from the options for the time being excellent work keeping on working IMO a great super great option would be if you could remap some controls to the mouse, for instance, allowing the mouse to control the crossair in metroid prime would make it amazing !!! Alessandro

Comment by giovanni...@ticino.com, Oct 08, 2008

I got x86 version working on LInux FC7 by editing Source/Plugins/Plugin_VideoOGL/Src/TextureMngr?.cpp and commenting out like this following lines //if( !entry.isNonPow2 && ((tm0.min_filter&3)==1||(tm0.min_filter&3)==2) ) {

// gluBuild2DMipmaps(GL_TEXTURE_2D, 4, width, height, gl_format, gl_type, temp);
// entry.bHaveMipMaps = true;
//}
//else

then running scons

Comment by mikedep333, Oct 11, 2008

Revision 840 compiles, starts up a rom, and runs pretty well.

Comment by diegoocampo8, Oct 18, 2008

Is there someone trying it in linux x64? For me always worked fine (I use ubuntu intrepid ibex) until they implemented dual core in linux and now its about 200 revisions without correct the problem.. I can compile it i can open it but i can not run any game, also i the configuration dialog of any plugin doesn't open.. and in the console i get the following errors at the beginning: Error loading DLL Plugins/libdsplle.so: Plugins/libdsplle.so: undefined symbol: Z17HLE_ROM_80E7_81F8vFailed to load plugin Plugins/libdsplle.so - unknown error.

Symbol DllDebugger? missing in Plugins/libPlugin_Wiimote.so (error: Plugins/libPlugin_Wiimote.so: undefined symbol: DllDebugger?) Symbol DllDebugger? missing in Plugins/libPlugin_nJoy_SDL.so (error: Plugins/libPlugin_nJoy_SDL.so: undefined symbol: DllDebugger?) Symbol DllDebugger? missing in Plugins/libpadsimple.so (error: Plugins/libpadsimple.so: undefined symbol: DllDebugger?).

And this when i open a game: Failed to load DSP plugin Couldn't init the core. Check your configuration.

I opened an issue with that but i didn't receive any new!

Comment by liuzerus87, Nov 08, 2008

Revision 1097 doesn't compile for me. I went back to revision 840, but I have the same issue as diegocampo8 running 32-bit linux (Ubuntu Intrepid).

Comment by jahleetburgos, Nov 16, 2008

Follow all instructions and gave me the following error

Linking shared Binary/Linux-i686/Plugins/libPlugin_VideoOGL.so /usr/bin/ld: cannot find -lGL collect2: ld returned 1 exit status scons: [Binary/Linux-i686/Plugins/libPlugin_VideoOGL.so] Error 1 scons: building terminated because of errors.

help!!!

Comment by nakeee, Nov 19, 2008

You also needs to have libGL installed..

Comment by olejl77, Nov 20, 2008

FYI. This should take care of things for people running Fedora:

su -c 'yum install subversion scons gcc-c++ wxBase wxGTK wxGTK-gl wxGTK-devel SDL-devel SDL-debuginfo Cg libCg libXxf86vm-devel libXxf86vm-debuginfo libXext-devel libXext-debuginfo glew-devel cairo-devel cairo-debuginfo libao libao-devel bluez-libs-devel' && svn checkout http://dolphin-emu.googlecode.com/svn/trunk/ dolphin-emu-read-only && cd dolphin-emu-read-only && scons && cd Binary/linux && ./Dolphin

Comment by larvid, Nov 23, 2008

I get:

Source/Core/Common/Src/libcommon.a(Thread.o): In function `Common::InterlockedExchangeAdd?(int, int)': Thread.cpp:(.text+0x60): undefined reference to `sync_add_and_fetch_4' Source/Core/Common/Src/libcommon.a(Thread.o): In function `Common::InterlockedIncrement?(int)': Thread.cpp:(.text+0x91): undefined reference to `sync_add_and_fetch_4' collect2: ld returned 1 exit status scons: [Binary/Linux-i686/Dolphin] Error 1 scons: building terminated because of errors.

Why?

Comment by Djhg2000, Dec 03, 2008

I get the same error here on r1387...

Comment by Djhg2000, Dec 04, 2008

Just updated to r1402, error remains.

Comment by Djhg2000, Dec 05, 2008

Here's the output again:

Linking Binary/Linux-i686/Dolphin Source/Core/Common/Src/libcommon.a(Thread.o): In function `Common::SyncInterlockedExchangeAdd?(int, int)': Thread.cpp:(.text+0x60): undefined reference to `sync_add_and_fetch_4' Source/Core/Common/Src/libcommon.a(Thread.o): In function `Common::SyncInterlockedIncrement?(int)': Thread.cpp:(.text+0x91): undefined reference to `sync_add_and_fetch_4' collect2: ld returned 1 exit status scons: [Binary/Linux-i686/Dolphin] Error 1 scons: building terminated because of errors.

Am I missing a library?

Comment by Djhg2000, Dec 05, 2008

Update to r1406 did not help either. Anyone knows what to do?

Edit: BTW I'm on openSUSE 11.0 w/KDE3 & latest patches.

Comment by Djhg2000, Dec 06, 2008

r1418 same problem.

I realize I should stop spamming this thread and just post when something changes. Untill then, no more updates.

Comment by brokenfinity, Dec 06, 2008

I'm just jumping on the GC emulation thing here, and by what I can tell, most of you are having errors b/c you do not have the 64bit version of Linux, and apparently Dolphin works best with 64bit OS's. This is just an educated guess, I haven't teste Dolphin on my Intrepid 64, b/c I just finished compiling it.

Comment by serralessandro, Dec 09, 2008

I have compiled the latest sources on OpenSuse? 11 64 bit. It compiles fine and it seems to work fine. The only game that I have tried is twilight princess. The only problem is that I have no sound with both plugins. I tried using both alsa and oss as my sound system. Has anybody solved that?

Comment by Djhg2000, Dec 09, 2008

Oh, I'm running on 32bit, though I thought it would work since there's a win32 AND win64 binary.

Would installing 64bit libs solve the problem?

Obvoiusly the parts wich actually use these wouldn't work, but would it be enough for GC emulation?

What does Dolphin use 64bit for anyway?

Comment by powtrix, Dec 09, 2008

Hmm here it doesn't finish to compile:

...
Compiling Source/Core/Common/Src/Thread.o
Compiling Source/Core/Common/Src/WaveFile.o
Compiling Source/Core/Common/Src/x64Emitter.o
Compiling Source/Core/Common/Src/x64Analyzer.o
Archiving Source/Core/Common/Src/libcommon.a
Indexing Source/Core/Common/Src/libcommon.a
Linking Binary/Linux-x86_64/DolphinNoGUI
Source/Core/Core/Src/libcore.a(LogManager.o): In function `LogManager::Log(LogTypes::LOG_TYPE, char const*, ...)':
LogManager.cpp:(.text+0xa12): undefined reference to `LogManager::m_LogSettings'
LogManager.cpp:(.text+0xc68): undefined reference to `LogManager::m_LogSettings'
LogManager.cpp:(.text+0xd29): undefined reference to `LogManager::m_LogSettings'
LogManager.cpp:(.text+0xf47): undefined reference to `LogManager::m_LogSettings'
LogManager.cpp:(.text+0xff4): undefined reference to `LogManager::m_LogSettings'
Source/Core/Core/Src/libcore.a(LogManager.o):LogManager.cpp:(.text+0x102f): more undefined references to `LogManager::m_LogSettings' follow
collect2: ld returned 1 exit status
scons: *** [Binary/Linux-x86_64/DolphinNoGUI] Error 1
scons: building terminated because of errors.
...

any Idea?

Comment by hemengenator, Dec 20, 2008

How do install Dolphin with Fedora 10?

Comment by p0stm4n, Dec 28, 2008

It's compile well in Ubuntu 8.04.1 i386

But I have a Segmentation Fail (Fallo de Segmentación) in GUI mode

But It works in No GUI mode but there are a lot of error an is too sloooow!

Anyway, good work ;)

Comment by CRISTIAN...@HOTMAIL.COM, Jan 01, 2009

compilei no ubuntu 8.4 -32b. ele pediu um arquivo chamado masterkey.bin e eu o achei na net e o adicionei na pasta especificada.agora ele não dá mais erro de iso invalida, mas aparece o nome e a bandeirinha japonesa da versão do jogo....só que quando eu clico em iniciar a iso o linux trava tudo e tenho que desligar brutamente.A interface abre normalmente , mas não carrega nenhuma iso.


Sign in to add a comment