Dolphin, the GameCube and Wii emulator - Forums

Full Version: [patches] FreeBSD support
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5
(08-27-2011, 01:27 AM)neobrain Wrote: [ -> ]Can you compile a debug build and post a backtrace of the crash?

I tried compiling it on debug but the build failed at the end, saying this-
Quote:cd /usr/ports/emulators/dolphin-emu/work/dolphin-emu-3.0.r20110823/Source/Core/DolphinWX && /usr/local/bin/cmake -E cmake_link_script CMakeFiles/dolphin-emu.dir/link.txt --verbose=yes
/usr/bin/c++ -O2 -pipe -ggdb -I/usr/local/include/portaudio2 -fno-strict-aliasing -fvisibility-inlines-hidden -pthread -L/usr/local/lib/portaudio2 -fopenmp CMakeFiles/dolphin-emu.dir/Src/ARCodeAddEdit.cpp.o CMakeFiles/dolphin-emu.dir/Src/AboutDolphin.cpp.o CMakeFiles/dolphin-emu.dir/Src/CheatsWindow.cpp.o CMakeFiles/dolphin-emu.dir/Src/ConfigMain.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/BreakpointDlg.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/BreakpointView.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/BreakpointWindow.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/CodeView.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/CodeWindow.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/CodeWindowFunctions.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/DSPDebugWindow.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/DSPRegisterView.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/DebuggerPanel.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/DebuggerUIUtil.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/JitWindow.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/MemoryCheckDlg.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/MemoryView.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/MemoryWindow.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/RegisterView.cpp.o CMakeFiles/dolphin-emu.dir/Src/Debugger/RegisterWindow.cpp.o CMakeFiles/dolphin-emu.dir/Src/FifoPlayerDlg.cpp.o CMakeFiles/dolphin-emu.dir/Src/Frame.cpp.o CMakeFiles/dolphin-emu.dir/Src/FrameAui.cpp.o CMakeFiles/dolphin-emu.dir/Src/FrameTools.cpp.o CMakeFiles/dolphin-emu.dir/Src/GameListCtrl.cpp.o CMakeFiles/dolphin-emu.dir/Src/GeckoCodeDiag.cpp.o CMakeFiles/dolphin-emu.dir/Src/HotkeyDlg.cpp.o CMakeFiles/dolphin-emu.dir/Src/ISOFile.cpp.o CMakeFiles/dolphin-emu.dir/Src/ISOProperties.cpp.o CMakeFiles/dolphin-emu.dir/Src/InputConfigDiag.cpp.o CMakeFiles/dolphin-emu.dir/Src/InputConfigDiagBitmaps.cpp.o CMakeFiles/dolphin-emu.dir/Src/LogConfigWindow.cpp.o CMakeFiles/dolphin-emu.dir/Src/LogWindow.cpp.o CMakeFiles/dolphin-emu.dir/Src/Main.cpp.o CMakeFiles/dolphin-emu.dir/Src/MemcardManager.cpp.o CMakeFiles/dolphin-emu.dir/Src/MemoryCards/GCMemcard.cpp.o CMakeFiles/dolphin-emu.dir/Src/MemoryCards/WiiSaveCrypted.cpp.o CMakeFiles/dolphin-emu.dir/Src/NetWindow.cpp.o CMakeFiles/dolphin-emu.dir/Src/PHackSettings.cpp.o CMakeFiles/dolphin-emu.dir/Src/PatchAddEdit.cpp.o CMakeFiles/dolphin-emu.dir/Src/TASInputDlg.cpp.o CMakeFiles/dolphin-emu.dir/Src/UDPConfigDiag.cpp.o CMakeFiles/dolphin-emu.dir/Src/VideoConfigDiag.cpp.o CMakeFiles/dolphin-emu.dir/Src/WXInputBase.cpp.o CMakeFiles/dolphin-emu.dir/Src/WiimoteConfigDiag.cpp.o CMakeFiles/dolphin-emu.dir/Src/WxUtils.cpp.o CMakeFiles/dolphin-emu.dir/Src/X11Utils.cpp.o -o ../../../Binaries/dolphin-emu -L/usr/local/lib ../Core/libcore.a -llzo2 ../DiscIO/libdiscio.a ../../../Externals/Bochs_disasm/libbdisasm.a ../InputCommon/libinputcommon.a ../Common/libcommon.a ../AudioCommon/libaudiocommon.a -lz -lsfml-network -lSDL -lGL -lavcodec -lavformat -lswscale -lXrandr /usr/local/lib/libSM.so /usr/local/lib/libICE.so /usr/local/lib/libX11.so /usr/local/lib/libXext.so -lusbhid -L/usr/local/lib -pthread -L/usr/local/lib -lwx_gtk2_core-2.8 -lwx_gtk2_aui-2.8 -lwx_gtk2_adv-2.8 -lwx_base-2.8 /usr/local/lib/libfreetype.so /usr/local/lib/libglib-2.0.so /usr/local/lib/libgobject-2.0.so /usr/local/lib/libgdk_pixbuf-2.0.so /usr/local/lib/libgdk-x11-2.0.so /usr/local/lib/libgtk-x11-2.0.so /usr/local/lib/libcairo.so /usr/local/lib/libpango-1.0.so /usr/local/lib/libatk-1.0.so ../../Plugins/Plugin_VideoOGL/libvideoogl.a ../../Plugins/Plugin_VideoSoftware/libvideosoftware.a ../VideoCommon/libvideocommon.a ../Core/libcore.a ../../Plugins/Plugin_VideoOGL/libvideoogl.a ../../Plugins/Plugin_VideoSoftware/libvideosoftware.a ../VideoCommon/libvideocommon.a ../../../Externals/Bochs_disasm/libbdisasm.a ../InputCommon/libinputcommon.a -lportaudio -L/usr/local/lib -lGLEW ../../../Externals/SOIL/libSOIL.a /usr/local/lib/libGLU.so /usr/local/lib/libGL.so ../../../Externals/CLRun/libclrun.a -lsfml-network /usr/local/lib/libSM.so /usr/local/lib/libICE.so /usr/local/lib/libX11.so /usr/local/lib/libXext.so -lusbhid -lwx_gtk2_core-2.8 -lwx_gtk2_aui-2.8 -lwx_gtk2_adv-2.8 -lwx_base-2.8 ../Common/libcommon.a -pthread /usr/local/lib/libasound.so -lao -lopenal -lpulse -Wl,-rpath,/usr/local/lib:
CMakeFiles/dolphin-emu.dir/Src/ARCodeAddEdit.cpp.o(.gnu.linkonce.t._ZNK12wxWindowBase7GetNameEv+0x78): In function `wxWindowBase::GetName() const':
/usr/local/include/wx-2.8/wx/window.h:342: undefined reference to `wxOnAssert(char const*, int, char const*, char const*, char const*)'
CMakeFiles/dolphin-emu.dir/Src/ARCodeAddEdit.cpp.o(.gnu.linkonce.t._ZNK19wxTopLevelWindowGTK8GetTitleEv+0x78): In function `wxTopLevelWindowGTK::GetTitle() const':
/usr/local/include/wx-2.8/wx/window.h:342: undefined reference to `wxOnAssert(char const*, int, char const*, char const*, char const*)'
CMakeFiles/dolphin-emu.dir/Src/CheatsWindow.cpp.o(.text+0x321): In function `wxCheatsWindow::OnEvent_CheckBoxEnableLogging_StateChange(wxCommandEvent&)':
/usr/include/c++/4.2/bits/stl_construct.h:81: undefined reference to `wxOnAssert(char const*, int, char const*, char const*, char const*)'
CMakeFiles/dolphin-emu.dir/Src/CheatsWindow.cpp.o(.gnu.linkonce.t._ZNK14wxCheckBoxBase16DoGet3StateValueEv+0x2e): In function `wxCheckBoxBase:Big GrinoGet3StateValue() const':
/usr/include/c++/4.2/bits/vector.tcc:137: undefined reference to `wxOnAssert(char const*, int, char const*, char const*, char const*)'
CMakeFiles/dolphin-emu.dir/Src/CheatsWindow.cpp.o(.gnu.linkonce.t._ZN14wxCheckBoxBase16DoSet3StateValueE15wxCheckBoxState+0x2e): In function `wxCheckBoxBase:Big GrinoSet3StateValue(wxCheckBoxState)':
/usr/include/c++/4.2/bits/vector.tcc:137: undefined reference to `wxOnAssert(char const*, int, char const*, char const*, char const*)'
CMakeFiles/dolphin-emu.dir/Src/CheatsWindow.cpp.o(.gnu.linkonce.t._ZNK14wxCheckBoxBase9IsCheckedEv+0x3b):/usr/include/c++/4.2/ext/new_allocator.h:91: more undefined references to `wxOnAssert(char const*, int, char const*, char const*, char const*)' follow
CMakeFiles/dolphin-emu.dir/Src/Main.cpp.o(.gnu.linkonce.r._ZTV10DolphinApp+0x90):/usr/ports/emulators/dolphin-emu/work/dolphin-emu-3.0.r20110823/Source/Core/DolphinWX/Src/Main.cpp:617: undefined reference to `wxApp::OnAssertFailure(char const*, int, char const*, char const*, char const*)'
CMakeFiles/dolphin-emu.dir/Src/Main.cpp.o(.gnu.linkonce.r._ZTV10DolphinApp+0x94):/usr/ports/emulators/dolphin-emu/work/dolphin-emu-3.0.r20110823/Source/Core/DolphinWX/Src/Main.cpp:617: undefined reference to `wxAppConsole::OnAssert(char const*, int, char const*, char const*)'
CMakeFiles/dolphin-emu.dir/Src/PHackSettings.cpp.o(.text+0x1d18): In function `CPHackSettings::LoadPHackData()':
/usr/local/include/wx-2.8/wx/checkbox.h:95: undefined reference to `wxOnAssert(char const*, int, char const*, char const*, char const*)'
CMakeFiles/dolphin-emu.dir/Src/PHackSettings.cpp.o(.text+0x1d58):/usr/local/include/wx-2.8/wx/checkbox.h:95: undefined reference to `wxOnAssert(char const*, int, char const*, char const*, char const*)'
CMakeFiles/dolphin-emu.dir/Src/PHackSettings.cpp.o(.text+0x1d98):/usr/local/include/wx-2.8/wx/checkbox.h:95: undefined reference to `wxOnAssert(char const*, int, char const*, char const*, char const*)'
CMakeFiles/dolphin-emu.dir/Src/PHackSettings.cpp.o(.text+0x2118): In function `CPHackSettings::SetRefresh(wxCommandEvent&)':
/usr/local/include/wx-2.8/wx/checkbox.h:95: undefined reference to `wxOnAssert(char const*, int, char const*, char const*, char const*)'
CMakeFiles/dolphin-emu.dir/Src/PHackSettings.cpp.o(.text+0x2158):/usr/local/include/wx-2.8/wx/checkbox.h:95: undefined reference to `wxOnAssert(char const*, int, char const*, char const*, char const*)'
CMakeFiles/dolphin-emu.dir/Src/PHackSettings.cpp.o(.text+0x2198):/usr/local/include/wx-2.8/wx/checkbox.h:95: more undefined references to `wxOnAssert(char const*, int, char const*, char const*, char const*)' follow
*** Error code 1

Stop in /usr/ports/emulators/dolphin-emu/work/dolphin-emu-3.0.r20110823.
*** Error code 1

Stop in /usr/ports/emulators/dolphin-emu/work/dolphin-emu-3.0.r20110823.
*** Error code 1

Stop in /usr/ports/emulators/dolphin-emu/work/dolphin-emu-3.0.r20110823.
*** Error code 1

Stop in /usr/ports/emulators/dolphin-emu.
Hi !

Thanks a lot for having tested the port...

Quote:[...]
Dolphin works slightly better for me when using [quote]LIBGL_ALWAYS_INDIRECT=1

I think this crash may be the same as I encountered on my machine : you card probably does not support the GL_EXT_framebufer_object. Can you confirm this ?
(08-27-2011, 02:14 AM)martymac Wrote: [ -> ]Hi !

Thanks a lot for having tested the port...

Quote:[...]
Dolphin works slightly better for me when using [quote]LIBGL_ALWAYS_INDIRECT=1

I think this crash may be the same as I encountered on my machine : you card probably does not support the GL_EXT_framebufer_object. Can you confirm this ?

That appears to be the case. GL_EXT_framebuffer_object is nowhere to be found when i run glxinfo
Quote:That appears to be the case. GL_EXT_framebuffer_object is nowhere to be found when i run glxinfo

OK. Dolphin should not crash : there is a test for the presence of support for this object in the code, but unfortunately the error is not catched very well yet :/

I've myself tried the emulator on two machines : I get the same error as you on a machine that does *not* support the GL_EXT_framebuffer_object ; on the other one (which support this object), I only get a black screen (but sound works). Could you try the emulator on a machine that supports GL_EXT_framebuffer_object ? (I know this may be difficult :p).

Otherwise, on both of my machines, software rendering works. Does software rendering work for you ?

Thanks,
(08-27-2011, 03:44 AM)martymac Wrote: [ -> ]
Quote:That appears to be the case. GL_EXT_framebuffer_object is nowhere to be found when i run glxinfo

OK. Dolphin should not crash (there is a test for the presence of this function in the code) but this case is not well handed by the code yet :/

Does software rendering work for you ?

Yes, software rendering works
Quote:Yes, software rendering works

OK, good Smile

Sorry, I've edited the post meanwhile : would you have a machine that supports GL_EXT_framebuffer_object ?
(08-27-2011, 04:34 AM)martymac Wrote: [ -> ]
Quote:Yes, software rendering works

OK, good Smile

Sorry, I've edited the post meanwhile : would you have a machine that supports GL_EXT_framebuffer_object ?

No I don't, but I'm going to build a new machine soon. I'll make sure the video card will support it.
Quote:No I don't, but I'm going to build a new machine soon. I'll make sure the video card will support it.

Eh Smile

Feel free to contact me then to tell me if the emulator works for you !

Thanks again.
Fwiw, I just committed your changes to the freebsd-port branch, see http://code.google.com/p/dolphin-emu/source/list?name=freebsd-port .
However, you broke at least the Windows build ;D
MemoryUtil.cpp fails to compile because unistd.h isn't available on Windows.
Well no one will checkout the FreeBSD branch unless they are using FreeBSD, so why does the Windows build matter?
Pages: 1 2 3 4 5