Project

General

Profile

Actions

Emulator Issues #2763

closed

Compilation Issue

Added by thetacolad over 14 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 steps will reproduce the problem?

  1. Compiling on Mac OS X

What is the expected output? What do you see instead?
The compilation using SCons to complete it

Dolphin version with the problem? Other Dolphin version without the
problem?
The latest one on the SVN
32-bit or 64-bit and any other build parameters?
32bit
OS version and versions of tools/libraries used?
Everything provided in the Wiki, using Snow Leopard 10.6.3
Please provide any additional information below.
I receive this error when trying to compile using SCons
"scons: Building targets ...
Linking shared Binary/Darwin-i386/Dolphin.app/Contents/PlugIns/libPlugin_GCPad.dylib
ld: warning: in /opt/local/lib/libSDLmain.a, file was built for unsupported file format which is not
the architecture being linked (i386)
ld: warning: in /opt/local/lib/libSDL.dylib, file was built for unsupported file format which is not
the architecture being linked (i386)
Undefined symbols:
"_SDL_GetError", referenced from:
InputCommon::SearchDevices(std::vector<InputCommon::CONTROLLER_INFO,
std::allocator<InputCommon::CONTROLLER_INFO> >&, int&, int&)in
libinputcommon.a(SDL_Util.o)
"_SDL_JoystickClose", referenced from:
Close_Devices() in GCPad.os
"_SDL_JoystickNumHats", referenced from:
InputCommon::SearchDevices(std::vector<InputCommon::CONTROLLER_INFO,
std::allocator<InputCommon::CONTROLLER_INFO> >&, int&, int&)in
libinputcommon.a(SDL_Util.o)
"_SDL_JoystickName", referenced from:
InputCommon::SearchDevices(std::vector<InputCommon::CONTROLLER_INFO,
std::allocator<InputCommon::CONTROLLER_INFO> >&, int&, int&)in
libinputcommon.a(SDL_Util.o)
"_SDL_JoystickGetButton", referenced from:
IsKey(int) in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
InputCommon::GetButton(_SDL_Joystick*, int, int, int, int, int&, int&, int&, int&, bool&, bool&,
bool, bool, bool, bool, bool, bool)in libinputcommon.a(SDL_Util.o)
InputCommon::GetButton(_SDL_Joystick*, int, int, int, int, int&, int&, int&, int&, bool&, bool&,
bool, bool, bool, bool, bool, bool)in libinputcommon.a(SDL_Util.o)
"_SDL_JoystickUpdate", referenced from:
GetAxisState(CONTROLLER_MAPPING_GC&) in GCPad.os
InputCommon::GetButton(_SDL_Joystick*, int, int, int, int, int&, int&, int&, int&, bool&, bool&,
bool, bool, bool, bool, bool, bool)in libinputcommon.a(SDL_Util.o)
"_SDL_JoystickGetHat", referenced from:
IsKey(int) in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
_PAD_GetStatus in GCPad.os
InputCommon::GetButton(_SDL_Joystick*, int, int, int, int, int&, int&, int&, int&, bool&, bool&,
bool, bool, bool, bool, bool, bool)in libinputcommon.a(SDL_Util.o)
"_SDL_JoystickOpened", referenced from:
Close_Devices() in GCPad.os
"_SDL_JoystickOpen", referenced from:
InputCommon::SearchDevices(std::vector<InputCommon::CONTROLLER_INFO,
std::allocator<InputCommon::CONTROLLER_INFO> >&, int&, int&)in
libinputcommon.a(SDL_Util.o)
"_SDL_JoystickGetAxis", referenced from:
GetAxisState(CONTROLLER_MAPPING_GC&) in GCPad.os
GetAxisState(CONTROLLER_MAPPING_GC&) in GCPad.os
GetAxisState(CONTROLLER_MAPPING_GC&) in GCPad.os
GetAxisState(CONTROLLER_MAPPING_GC&) in GCPad.os
GetAxisState(CONTROLLER_MAPPING_GC&) in GCPad.os
GetAxisState(CONTROLLER_MAPPING_GC&) in GCPad.os
InputCommon::GetButton(_SDL_Joystick*, int, int, int, int, int&, int&, int&, int&, bool&, bool&,
bool, bool, bool, bool, bool, bool)in libinputcommon.a(SDL_Util.o)
InputCommon::GetButton(_SDL_Joystick*, int, int, int, int, int&, int&, int&, int&, bool&, bool&,
bool, bool, bool, bool, bool, bool)in libinputcommon.a(SDL_Util.o)
InputCommon::GetButton(_SDL_Joystick*, int, int, int, int, int&, int&, int&, int&, bool&, bool&,
bool, bool, bool, bool, bool, bool)in libinputcommon.a(SDL_Util.o)
InputCommon::GetButton(_SDL_Joystick*, int, int, int, int, int&, int&, int&, int&, bool&, bool&,
bool, bool, bool, bool, bool, bool)in libinputcommon.a(SDL_Util.o)
"_SDL_Quit", referenced from:
_Shutdown in GCPad.os
"_SDL_WasInit", referenced from:
Close_Devices() in GCPad.os
_Shutdown in GCPad.os
InputCommon::SearchDevices(std::vector<InputCommon::CONTROLLER_INFO,
std::allocator<InputCommon::CONTROLLER_INFO> >&, int&, int&)in
libinputcommon.a(SDL_Util.o)
"_SDL_Init", referenced from:
InputCommon::SearchDevices(std::vector<InputCommon::CONTROLLER_INFO,
std::allocator<InputCommon::CONTROLLER_INFO> >&, int&, int&)in
libinputcommon.a(SDL_Util.o)
"_SDL_NumJoysticks", referenced from:
InputCommon::SearchDevices(std::vector<InputCommon::CONTROLLER_INFO,
std::allocator<InputCommon::CONTROLLER_INFO> >&, int&, int&)in
libinputcommon.a(SDL_Util.o)
"_SDL_JoystickNumAxes", referenced from:
InputCommon::SearchDevices(std::vector<InputCommon::CONTROLLER_INFO,
std::allocator<InputCommon::CONTROLLER_INFO> >&, int&, int&)in
libinputcommon.a(SDL_Util.o)
"_SDL_JoystickNumButtons", referenced from:
InputCommon::SearchDevices(std::vector<InputCommon::CONTROLLER_INFO,
std::allocator<InputCommon::CONTROLLER_INFO> >&, int&, int&)in
libinputcommon.a(SDL_Util.o)
"_SDL_JoystickNumBalls", referenced from:
InputCommon::SearchDevices(std::vector<InputCommon::CONTROLLER_INFO,
std::allocator<InputCommon::CONTROLLER_INFO> >&, int&, int&)in
libinputcommon.a(SDL_Util.o)
ld: symbol(s) not found
collect2: ld returned 1 exit status
lipo: can't open input file: /var/tmp//cc9QZUYW.out (No such file or directory)
scons: *** [Binary/Darwin-i386/Dolphin.app/Contents/PlugIns/libPlugin_GCPad.dylib] Error 1
scons: building terminated because of errors."

Actions #1

Updated by Billiard26 over 14 years ago

Don't say "latest one in the svn". Say which revision.

Actions #2

Updated by thetacolad over 14 years ago

Revision 5597

Actions #3

Updated by Sonicadvance1 over 14 years ago

yea, that's soren's fault for forcing universal builds, I have to modify to build
64bit only on my end. I'll add him so he knows his issue

Actions #4

Updated by soren.jorvang over 14 years ago

Universal builds work fine for me with both default settings and nowx.

The submitter's problem appears to be simply a missing "+universal" when building the Macports SDL package.

This is fixed like so, as mentioned on http://code.google.com/p/dolphin-emu/wiki/MacOSX_Build .

sudo port upgrade --enforce-variants glew libsdl scons zlib +universal

Actions #5

Updated by soren.jorvang over 14 years ago

  • Status changed from New to Fixed
Actions #6

Updated by thetacolad over 14 years ago

for future reference, or anyone else that had my problem
after doing entering this command:
"sudo port upgrade --enforce-variants glew libsdl scons zlib +universal"
nothign changed, and I got the problem still

I checked with this command: "port installed glew libsdl scons zlib" to see if they
had the +universal next to them, and only the zlib did. I believe that the command
+universal in the original line only applies it to the zlib. So I ran "sudo port
install glew +universal," then "sudo port install libsdl +universal," etc.
individually and after checking the libraries, they had the +universal next to it.

so if it doesn't work initially, try doing each one individually.

Actions #7

Updated by soren.jorvang over 14 years ago

+universal does apply to all the packages specified, but I guess upgrade only takes --enforce-variants into
account when there's actually anything (other than binary format) to upgrade.

Actions

Also available in: Atom PDF