Dear all,
I just finished to compile the latest version of Irrlicht (1.6) on my laptop (a MacBook Air running MacOS X 10.6 Snow Leopard). Both the compiling of the library and of a few examples went alright. The examples seem running smoothly.
I've instead experienced an issue while compiling one of the applications written by myself. This application can compile (I just had to do some minor changes to the parameters passed to the createDevice() function), but returns me a few errors during the linking phase. These errors are the following. Please consider that my application doesn't use any joystick and no joystick related functions are ever called.
Undefined symbols:
"_IOServiceMatching", referenced from:
irr::CIrrDeviceMacOSX::activateJoysticks(irr::core::array<irr::SJoystickInfo, irr::core::irrAllocator<irr::SJoystickInfo> >&)in libIrrlicht.a(CIrrDeviceMacOSX.o)
"_IOIteratorNext", referenced from:
irr::CIrrDeviceMacOSX::activateJoysticks(irr::core::array<irr::SJoystickInfo, irr::core::irrAllocator<irr::SJoystickInfo> >&)in libIrrlicht.a(CIrrDeviceMacOSX.o)
"_IOServiceGetMatchingServices", referenced from:
irr::CIrrDeviceMacOSX::activateJoysticks(irr::core::array<irr::SJoystickInfo, irr::core::irrAllocator<irr::SJoystickInfo> >&)in libIrrlicht.a(CIrrDeviceMacOSX.o)
"_IOObjectRelease", referenced from:
getJoystickDeviceInfo(unsigned int, __CFDictionary*, JoystickInfo*)in libIrrlicht.a(CIrrDeviceMacOSX.o)
getJoystickDeviceInfo(unsigned int, __CFDictionary*, JoystickInfo*)in libIrrlicht.a(CIrrDeviceMacOSX.o)
irr::CIrrDeviceMacOSX::activateJoysticks(irr::core::array<irr::SJoystickInfo, irr::core::irrAllocator<irr::SJoystickInfo> >&)in libIrrlicht.a(CIrrDeviceMacOSX.o)
irr::CIrrDeviceMacOSX::activateJoysticks(irr::core::array<irr::SJoystickInfo, irr::core::irrAllocator<irr::SJoystickInfo> >&)in libIrrlicht.a(CIrrDeviceMacOSX.o)
"_IORegistryEntryGetParentEntry", referenced from:
getJoystickDeviceInfo(unsigned int, __CFDictionary*, JoystickInfo*)in libIrrlicht.a(CIrrDeviceMacOSX.o)
getJoystickDeviceInfo(unsigned int, __CFDictionary*, JoystickInfo*)in libIrrlicht.a(CIrrDeviceMacOSX.o)
"_IORegistryEntryCreateCFProperties", referenced from:
getJoystickDeviceInfo(unsigned int, __CFDictionary*, JoystickInfo*)in libIrrlicht.a(CIrrDeviceMacOSX.o)
irr::CIrrDeviceMacOSX::activateJoysticks(irr::core::array<irr::SJoystickInfo, irr::core::irrAllocator<irr::SJoystickInfo> >&)in libIrrlicht.a(CIrrDeviceMacOSX.o)
"_IOCreatePlugInInterfaceForService", referenced from:
irr::CIrrDeviceMacOSX::activateJoysticks(irr::core::array<irr::SJoystickInfo, irr::core::irrAllocator<irr::SJoystickInfo> >&)in libIrrlicht.a(CIrrDeviceMacOSX.o)
"_IOMasterPort", referenced from:
irr::CIrrDeviceMacOSX::activateJoysticks(irr::core::array<irr::SJoystickInfo, irr::core::irrAllocator<irr::SJoystickInfo> >&)in libIrrlicht.a(CIrrDeviceMacOSX.o)
ld: symbol(s) not found
collect2: ld returned 1 exit status
Hope this helps,
Fabio
[Solved] Linking errors on MacOS X 10.6 Snow Leopard
-
- Posts: 914
- Joined: Fri Aug 03, 2007 12:43 pm
- Location: South Africa
- Contact:
Hi Fuzzy,FuzzYspo0N wrote:in IrrlichtCompileConfig.h
IRR_COMPILE_WITH_ allows removing things from the engine ,
Find _IRR_COMPILE_WITH_JOYSTICK something, its near the top.
Comment that part out for now
thanks for your hint.
I've commented out that part of IrrlichtCompileConfig.h (line #99, #define _IRR_COMPILE_WITH_JOYSTICK_EVENTS_) and recompiled the library. My application now works.
Many thanks,
Fabio
If I find time this weekend I'll make a start on the .framework release for 1.6 and update the project files. The reason it will take some time is because I'll need to fix the installer and make sure it upgrades properly so 1.5.1 and 1.6 apps can both run on the same system. I will also have to bugfix the 1.5.1 installer so that installing 1.5.1 over 1.6 doesn't cause problems.
I may also buy Snow Leopard and upgrade to the latest version of Xcode, though no promises here. All this will be next week at the earliest, since I've got other (more fun) projects to work on too!
I may also buy Snow Leopard and upgrade to the latest version of Xcode, though no promises here. All this will be next week at the earliest, since I've got other (more fun) projects to work on too!