Project

General

Profile

Actions

Emulator Issues #808

closed

Dolphin svn compilation and launch broken on Mac OS X

Added by qmathe over 15 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

What version of the product are you using? On what operating system?
SVN trunk r2813 on Mac OS X 10.5.6 x86

Compilation is currently broken on Mac OS X...

First, there is a typo in the include of CFURL.h as explained by soren.jorvang here: http://code.google.com/p/dolphin-emu/wiki/MacOSX_Build

I corrected this CFURL include statement, but it now fails on OpenAL:

Compiling Build/Darwin-i386-release/Source/Core/AudioCommon/Src/AudioCommon.o
In file included from Source/Core/AudioCommon/Src/AudioCommon.cpp:23:
Source/Core/AudioCommon/Src/OpenALStream.h:31:19: error: AL/al.h: No such file or directory
Source/Core/AudioCommon/Src/OpenALStream.h:32:20: error: AL/alc.h: No such file or
directory

I installed openal with macports, but the directory which contains the headers is
/opt/local/include/openal and not /opt/local/include/AL. I worked around this problem by
making a symbolic link /opt/local/include/AL on the openal directory.

Then it fails with another error:

Source/Core/AudioCommon/Src/OpenALStream.cpp: In member function 'virtual bool
OpenALStream::Start()':
Source/Core/AudioCommon/Src/OpenALStream.cpp:35: error: invalid conversion from 'char*' to
'ALCubyte*'
Source/Core/AudioCommon/Src/OpenALStream.cpp:35: error: initializing argument 1 of
'ALCdevice* alcOpenDevice(ALCubyte*)'
scons: *** [Build/Darwin-i386-release/Source/Core/AudioCommon/Src/OpenALStream.o] Error
1

I was able to work around that by disabling OpenAL with an #undef HAVE_OPENAL in Source/Core/Common/Src/Common.h

Then everything compiles fine, however Dolphin crashes on launch with an issue that seems
similar to: http://code.google.com/p/dolphin-emu/issues/detail?id=462

Here is the logging output:
17:47:367 N: BOOT Loading Settings from ./User/Config/Dolphin.ini
handler instance 0x0
17:47:433 N: BOOT Starting application
17:47:433 N: BOOT Loading Settings from ./User/Config/Dolphin.ini
17:47:510 W: COMMON IsDirectory: stat failed on
./USER/WII/TITLE/00000001/00000002/CONTENT: No such file or directory

… and the backtrace:
Reason: KERN_INVALID_ADDRESS at address: 0xfffffff4
0x95486a9c in std::string::assign ()
(gdb) bt
#0 0x95486a9c in std::string::assign ()
#1 0x95486b71 in std::string::assign ()
#2 0x15083cc9 in IniFile::Get ()
#3 0x1508bee5 in AudioCommonConfig::Load ()
#4 0x15061f91 in CConfig::Load ()
#5 0x15061fbf in CConfig::CConfig ()
#6 0x150911d4 in __static_initialization_and_destruction_0 ()
#7 0x150911ef in global constructors keyed to g_Config ()
#8 0x8fe12f36 in
__dyld__ZN16ImageLoaderMachO18doModInitFunctionsERKN11ImageLoader11LinkContextE ()
#9 0x8fe0e7e3 in __dyld__ZN11ImageLoader23recursiveInitializationERKNS_11LinkContextEj ()
#10 0x8fe0e8c9 in __dyld__ZN11ImageLoader15runInitializersERKNS_11LinkContextE ()
#11 0x8fe02202 in __dyld__ZN4dyld15runInitializersEP11ImageLoader ()
#12 0x8fe0bbdd in __dyld_dlopen ()
#13 0x95046202 in dlopen ()
#14 0x000f62e9 in DynamicLibrary::Load ()
#15 0x00102065 in Common::CPlugin::CPlugin ()
#16 0x00068ec4 in CPluginInfo::CPluginInfo ()
#17 0x0006a118 in CPluginManager::ScanForPlugins ()
#18 0x00013e71 in CFrame::CFrame ()
#19 0x00048380 in DolphinApp::OnInit ()
#20 0x00048fae in wxAppConsole::CallOnInit ()
#21 0x008224ab in wxEntry ()
#22 0x00047b42 in main ()

Actions #1

Updated by slavitch over 15 years ago

I get the same error

Actions #2

Updated by marcus over 15 years ago

  • Status changed from New to Accepted

Mac support is not very complete right now.

We are waiting for someone to step up and take over the porting job.

Actions #3

Updated by spammesenselessorama over 15 years ago

Stil broken in version 3091:

scons: Reading SConscript files ...
Checking for pkg-config version > 0.15.0... yes
Looking for macports... (cached) Adding port lib and include path(cached) yes
Looking for fink... (cached) no
Checking for sdl lib version > 1.0.0... (cached) yes
Checking for bluez... (cached)
Looking for framework bluez...
Using pkg-config for bluez... no
Looking for lib bluez... no
Checking for ao... (cached)
Looking for framework ao...
Using pkg-config for ao... yes
Checking for openal... (cached)
Looking for framework openal... yes
Checking for sfml... (cached)
Looking for framework sfml...
Using pkg-config for sfml... no
Looking for lib sfml... no
Checking for wxWidgets >= 2.8... (cached) yes
Checking for OpenGL... (cached)
Looking for framework OpenGL... yes
Checking for Cg... (cached)
Looking for framework Cg... yes
Checking for GLEW... (cached)
Looking for framework GLEW...
Using pkg-config for glew... no
Looking for lib GLEW... yes
Plugin_PadSimpleEvnt Doesn't work without testgl
scons: done reading SConscript files.
scons: Building targets ...
scons: building associated VariantDir targets: Build/Darwin-i386-release
Compiling Build/Darwin-i386-release/Externals/Bochs_disasm/PowerPCDisasm.o
Compiling Build/Darwin-i386-release/Externals/Bochs_disasm/dis_decode.o
Compiling Build/Darwin-i386-release/Externals/Bochs_disasm/dis_groups.o
Compiling Build/Darwin-i386-release/Externals/Bochs_disasm/resolve.o
Compiling Build/Darwin-i386-release/Externals/Bochs_disasm/syntax.o
Compiling Build/Darwin-i386-release/Externals/LZO/minilzo.o
Compiling Build/Darwin-i386-release/Externals/WiiUseSrc/Src/classic.o
Compiling Build/Darwin-i386-release/Externals/WiiUseSrc/Src/dynamics.o
Compiling Build/Darwin-i386-release/Externals/WiiUseSrc/Src/events.o
Compiling Build/Darwin-i386-release/Externals/WiiUseSrc/Src/guitar_hero_3.o
Compiling Build/Darwin-i386-release/Externals/WiiUseSrc/Src/io.o
Compiling Build/Darwin-i386-release/Externals/WiiUseSrc/Src/io_osx.o
Compiling Build/Darwin-i386-release/Externals/WiiUseSrc/Src/ir.o
Compiling Build/Darwin-i386-release/Externals/WiiUseSrc/Src/nunchuk.o
Compiling Build/Darwin-i386-release/Externals/WiiUseSrc/Src/wiiuse.o
scons: Configure: creating Source/Core/Common/Src/Config.h
Compiling Build/Darwin-i386-release/Source/Core/AudioCommon/Src/AOSoundStream.o
Source/Core/AudioCommon/Src/Mixer.h:28: warning: 'class CMixer' has virtual functions but non-virtual
destructor
Compiling Build/Darwin-i386-release/Source/Core/AudioCommon/Src/AudioCommon.o
Source/Core/AudioCommon/Src/Mixer.h:28: warning: 'class CMixer' has virtual functions but non-virtual
destructor
Source/Core/AudioCommon/Src/NullSoundStream.h:24: warning: 'class NullMixer' has virtual functions but
non-virtual destructor
Compiling Build/Darwin-i386-release/Source/Core/AudioCommon/Src/AudioCommonConfig.o
Source/Core/AudioCommon/Src/Mixer.h:28: warning: 'class CMixer' has virtual functions but non-virtual
destructor
Compiling Build/Darwin-i386-release/Source/Core/AudioCommon/Src/Mixer.o
Source/Core/AudioCommon/Src/Mixer.h:28: warning: 'class CMixer' has virtual functions but non-virtual
destructor
Compiling Build/Darwin-i386-release/Source/Core/AudioCommon/Src/OpenALStream.o
Source/Core/AudioCommon/Src/Mixer.h:28: warning: 'class CMixer' has virtual functions but non-virtual
destructor
Source/Core/AudioCommon/Src/OpenALStream.cpp: In member function 'virtual bool OpenALStream::Start()':
Source/Core/AudioCommon/Src/OpenALStream.cpp:37: error: invalid conversion from 'ALCubyte*' to 'const
ALCchar*'
Source/Core/AudioCommon/Src/OpenALStream.cpp:37: error: initializing argument 1 of 'ALCdevice*
alcOpenDevice(const ALCchar*)'
Source/Core/AudioCommon/Src/OpenALStream.cpp: In member function 'virtual void
OpenALStream::SoundLoop()':
Source/Core/AudioCommon/Src/OpenALStream.cpp:141: warning: unused variable 'ulBytesWritten'
scons: *** [Build/Darwin-i386-release/Source/Core/AudioCommon/Src/OpenALStream.o] Error 1
scons: building terminated because of errors.

Actions #5

Updated by nicola.chiesa over 15 years ago

it compiles for me if I change line 37 of OpenALStream.cpp from

pDevice =
alcOpenDevice((ALCubyte*)pDeviceList->GetDeviceName(pDeviceList->GetDefaultDevice()));

to

pDevice = alcOpenDevice((const ALCchar
*)pDeviceList->GetDeviceName(pDeviceList->GetDefaultDevice()));

not sure what is the implication of this.

I can start the GUI and access the setting, but it crash when loading a game. It
complain of a missing file. More details later...

by the way, do you have SFML: "Looking for lib sfml... no"

Actions #6

Updated by spammesenselessorama over 15 years ago

SFML...
So in addition to the dependancies on the Mac OS X tutorial page (libao cairo scons wxwidgets glew), I also need
SFML? I also installed OpenAL. Perhaps the Mac OS X tutorial page needs an update.
By the way, I downloaded SFML and it appears to be a set of libraries to use with Xcode. How did you install it?

Actions #7

Updated by Sonicadvance1 over 15 years ago

You don't need SFML to run Dolphin, that was someone testing something.
I will change the line in OpenALStream.cpp to compile for other people. My AL
configuration must be a bit different than most.

Actions #8

Updated by Sonicadvance1 over 15 years ago

As for the initial issue creation, it was with an old svn version. Someone must check
out latest and see if it still crashes.

Actions #9

Updated by youme9 over 15 years ago

@ SonicAdvance1, for me, you just have to comment out line 37 of OpenAlStream.cpp.

Actions #10

Updated by nicola.chiesa over 15 years ago

this is fixed in last revision r3100.

Actions #11

Updated by Sonicadvance1 over 15 years ago

  • Status changed from Accepted to Fixed

awesome.

Actions #12

Updated by Josesmp over 15 years ago

In last revision I have this error previous svn was ok

Checked out revision 3101.
macbook-de-jose-soares:~ jose_sm_p$ cd dolphin-emu-read-only
macbook-de-jose-soares:dolphin-emu-read-only jose_sm_p$ scons
scons: Reading SConscript files ...
Checking for pkg-config version > 0.15.0... (cached) yes
Looking for macports... (cached) Adding port lib and include path(cached) yes
Looking for fink... (cached) no
Checking for sdl lib version > 1.0.0... (cached) yes
Checking for bluez... (cached)
Looking for framework bluez... (cached)
Using pkg-config for bluez... (cached) no
Looking for lib bluez... (cached) no
Checking for ao... (cached)
Looking for framework ao... (cached)
Using pkg-config for ao... (cached) yes
Checking for openal... (cached)
Looking for framework openal... (cached) yes
Checking for sfml... (cached)
Looking for framework sfml... (cached)
Using pkg-config for sfml... (cached) no
Looking for lib sfml... (cached) no
Checking for wxWidgets >= 2.8... (cached) yes
Checking for OpenGL... (cached)
Looking for framework OpenGL... (cached) yes
Checking for Cg... (cached)
Looking for framework Cg... (cached) yes
Checking for GLEW... (cached)
Looking for framework GLEW... (cached)
Using pkg-config for glew... (cached) no
Looking for lib GLEW... (cached) yes
Plugin_PadSimpleEvnt Doesn't work without testgl
scons: done reading SConscript files.
scons: Building targets ...
scons: building associated VariantDir targets: Build/Darwin-i386-release
Compiling Build/Darwin-i386-release/Source/Core/DebuggerWX/Src/CodeWindow.o
Source/Core/DebuggerWX/Src/CodeWindow.cpp: In member function 'void
CCodeWindow::CreateMenu(const SCoreStartupParameter&)':
Source/Core/DebuggerWX/Src/CodeWindow.cpp:520: warning: unused variable 'pFontPicker'
Source/Core/DebuggerWX/Src/CodeWindow.cpp: In member function 'void
CCodeWindow::UpdateButtonStates()':
Source/Core/DebuggerWX/Src/CodeWindow.cpp:864: warning: unused variable 'Running'
Compiling Build/Darwin-i386-release/Source/Core/DebuggerWX/Src/CodeWindowSJP.o
Source/Core/DebuggerWX/Src/CodeWindowSJP.cpp: In member function 'void
CCodeWindow::OnSymbolsMenu(wxCommandEvent&)':
Source/Core/DebuggerWX/Src/CodeWindowSJP.cpp:205: warning: unused variable 'started'
Compiling Build/Darwin-i386-release/Source/Core/DebuggerWX/Src/JitWindow.o
Source/Core/DebuggerWX/Src/JitWindow.cpp: In member function 'void
CJitWindow::Compare(u32)':
Source/Core/DebuggerWX/Src/JitWindow.cpp:202: warning: declaration of 'sptr' shadows
a previous local
Source/Core/DebuggerWX/Src/JitWindow.cpp:181: warning: shadowed declaration is here
Compiling Build/Darwin-i386-release/Source/Core/DebuggerWX/Src/MemoryWindow.o
Compiling Build/Darwin-i386-release/Source/Core/DiscIO/Src/BannerLoaderWii.o
Compiling Build/Darwin-i386-release/Source/Core/DiscIO/Src/FileSystemGCWii.o
Compiling Build/Darwin-i386-release/Source/Core/DolphinWX/Src/AboutDolphin.o
Compiling Build/Darwin-i386-release/Source/Core/DolphinWX/Src/BootManager.o
Compiling Build/Darwin-i386-release/Source/Core/DolphinWX/Src/CheatsWindow.o
Compiling Build/Darwin-i386-release/Source/Core/DolphinWX/Src/ConfigMain.o
Compiling Build/Darwin-i386-release/Source/Core/DolphinWX/Src/Frame.o
Source/Core/DolphinWX/Src/Frame.h: In constructor 'CFrame::CFrame(bool, wxFrame*,
wxWindowID, const wxString&, const wxPoint&, const wxSize&, long int)':
Source/Core/DolphinWX/Src/Frame.h:106: warning: 'CFrame::m_bLogWindow' will be
initialized after
Source/Core/DolphinWX/Src/Frame.h:73: warning: 'wxStatusBar* CFrame::m_pStatusBar'
Source/Core/DolphinWX/Src/Frame.cpp:311: warning: when initialized here
Source/Core/DolphinWX/Src/Frame.cpp:348: warning: deprecated conversion from string
constant to 'char*''
Source/Core/DolphinWX/Src/Frame.cpp: In member function 'void
CFrame::OnKeyDown(wxKeyEvent&)':
Source/Core/DolphinWX/Src/Frame.cpp:506: error: 'MSWSetCursor' was not declared in
this scope
scons: *** [Build/Darwin-i386-release/Source/Core/DolphinWX/Src/Frame.o] Error 1
scons: building terminated because of errors.

Actions #13

Updated by Sonicadvance1 over 15 years ago

This is normal breaking of compiling on non-windows platforms since the developers in
Windows don't seem to care about others. should be fixed soon or is already fixed.

Actions #14

Updated by thelocosster about 15 years ago

Sorry but i have a little problem (i guess) , i just compilated dolphin in my mac snow leopard , i think there wasn
´t any error in the procedure but i just can´t solve how to execute it

Can anyone tell me how to ?

thanks

Actions

Also available in: Atom PDF