Project

General

Profile

Actions

Emulator Issues #444

closed

FTBFS (r1704)

Added by tinctorius 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

Dolphin svn (r1704) fails to build from source.

It misses includes of the <cmath> headers in

  • Source/Plugins/Plugin_VideoOGL/Src/Render.cpp
  • Source/Plugins/Plugin_nJoy_SDL/Src/nJoy.cpp

It fails to build Plugin_nJoy_Testing because it can't find the wx/*
includes. Adding a dependency on env['HAVE_WX'] in the relevant SConscript
file seems to fix it.

It doesn't define LogManager::m_LogSettings, causing a linker error for
Source/Core/Core/Src/libcore.a. Defining it in
Source/Core/Core/Src/LogManager.cpp fixes it.

Actions #1

Updated by nakeee over 15 years ago

What/how are you compiling it?
it compiles just fine for me

Actions #2

Updated by tinctorius over 15 years ago

Debian lenny, default being gcc 4.3.2.

Also, I get lots of other errors when trying to run the product related to not having
wx2.8. I'm installing wx2.8 now to see if it gets better.

Actions #3

Updated by tinctorius over 15 years ago

Okay, the main problem seems to be that wx2.8 wasn't available. It compiles now.

It still won't build with nowx=yes, which is probably still something you don't want.

Actions #4

Updated by XTra.KrazzY over 15 years ago

  • Status changed from New to Fixed
Actions #5

Updated by tinctorius over 15 years ago

I guess it isn't "fixed". If I download the source from SVN and run

$ scons nowx=yes wxgl=no sdlgl=yes CC=/usr/bin/gcc-4.2 CXX=/usr/bin/g++-4.2

it will fail as soon as something wx is used. SCons stops building as soon as it
tries to compile Core/Core/Src/EventHandler.o:

Compiling Build/Linux-x86_64-release/Source/Core/Core/Src/EventHandler.o
Source/Core/Core/Src/EventHandler.cpp:2:19: error: wx/wx.h: No such file or directory
Source/Core/Core/Src/EventHandler.cpp: In static member function 'static
sf::Key::Code EventHandler::wxCharCodeToSF(int)':
Source/Core/Core/Src/EventHandler.cpp:69: error: 'WXK_TAB' was not declared in this scope
Source/Core/Core/Src/EventHandler.cpp:71: error: 'WXK_RETURN' was not declared in
this scope
Source/Core/Core/Src/EventHandler.cpp:72: error: 'WXK_SHIFT' was not declared in this
scope
...(etcetera)...

Actions #6

Updated by nakeee over 15 years ago

fixed

Actions #7

Updated by tinctorius over 15 years ago

I still have issues with r1756, building for Linux (x86_64) with wx disabled.

Relatively easy to fix:

  • Source/Plugins/Plugin_nJoy_SDL/Src/nJoy.cpp is missing inclusion of .
  • Source/Plugins/Plugin_VideoOGL/Src/Render.cpp is missing inclusion of .
  • Source/Plugins/Plugin_nJoy_Testing/Src/nJoy.cpp is missing inclusion of <fcntl.h>.
  • Plugin_nJoy_Testing builds GUI/*.cpp regardless of HAVE_WX setting.

Harder to fix (might need some refactoring to replace functionality):

  • Source/Plugins/Plugin_nJoy_SDL/Src/Config.cpp uses a wxMessageBox to inform the
    user about duplicate joypads (line 122-152).
  • Source/Plugins/Plugin_nJoy_Testing/Src/nJoy.cpp uses its ConfigBox regardless of
    HAVE_WX setting (line 183-184).

Linking errors (debugger related):

  • Static linker fails to link libcore.a because LogManager::m_LogSettings can't be
    found. It seems te be defined in Source/Core/DebuggerWX, which is not built for
    obvious reasons.
  • Dynamic linker fails to start DolphinNoGUI properly. It can't load the DSP plugin,
    because it's missing some symbol 'gSequenced', probably exported by some debugger object.
Actions

Also available in: Atom PDF