SDL_Mixer broken under OSX 10.5 |
Hornpipe2
|
I'm getting an error when trying to build and run my SDL application under Mac OSX. Let's get the versions out of the way first : )
OS: Mac OSX 10.5 (32-bit) XCode: 3.1.4 GCC: 4.0.1 SDL: 1.2.15 (Intel 10.5+ Runtime Framework downloaded from here: http://www.libsdl.org/download-1.2.php ) SDL_mixer: 1.2.12 (Intel 10.5+ Framework downloaded from here: http://www.libsdl.org/projects/SDL_mixer ) SDL_image: 1.2.12 (Intel 10.5+ Framework downloaded from here: http://www.libsdl.org/projects/SDL_image ) All three frameworks downloaded today and extracted to (empty) /Library/Frameworks. ~/Library/Frameworks does not exist. When building, everything works great. (Ignore the "enum" warnings):
However, when attempting to run the application, I'm getting an error with the smpeg library included in SDL_mixer.
A little Googling points out that 0x80000022 often indicates a library <-> OS version mismatch. Possibly the framework has a 10.6 or 10.7 version of smpeg which is taking priority over any 10.5 version. In fact I'm not using smpeg at all, and would gladly ship without it, but recompiling sdl_mixer to not depend on smpeg doesn't seem like the best solution to me. |
|||||||||||||||
|
Hornpipe2
|
Here is someone reporting a similar problem on Stack Overflow. Fortunately, there's solutions! Unfortunately, they're solutions requiring recompiling the smpeg library.
http://stackoverflow.com/questions/1440456/static-libraries-in-version-cross-compiled-program
and
|
|||||||||||||||
|
SDL_Mixer broken under OSX 10.5 |
Hornpipe2
|
I posted about this on the forums, and even emailed the maintainers
directly, but have gotten no response. So next up: we go to the ML. Here is the original topic: http://forums.libsdl.org/viewtopic.php?t=8109 I'll quote some highlights from it. I'm getting an error when trying to build and run my SDL application under Mac OSX. Let's get the versions out of the way first : ) OS: Mac OSX 10.5 (32-bit) XCode: 3.1.4 GCC: 4.0.1 SDL, SDL_mixer, SDL_image: latest 1.2 versions from the website All three frameworks downloaded today and extracted to (empty) /Library/Frameworks. (~/Library/Frameworks does not exist.) When building, everything works great. However, when attempting to run the application, I'm getting an error with the smpeg library included in SDL_mixer. Code: macmini:timewave grkenn$ ./timewave dyld: Library not loaded: @rpath/smpeg.framework/Versions/A/smpeg Referenced from: /Library/Frameworks/SDL_mixer.framework/Versions/A/SDL_mixer Reason: no suitable image found. Did find: /Library/Frameworks/SDL_mixer.framework/Versions/A/Frameworks/smpeg.framework/Versions/A/smpeg: unknown required load command 0x80000022 Trace/BPT trap A little Googling points out that 0x80000022 often indicates a library <-> OS version mismatch. Possibly the framework has a 10.6 or 10.7 version of smpeg which is taking priority over any 10.5 version. Here is someone reporting a similar problem on Stack Overflow. Fortunately, there's solutions! Unfortunately, they're solutions requiring recompiling the smpeg library. http://stackoverflow.com/questions/1440456/static-libraries-in-version-cross-compiled-program -- * It is my belief that the official SDL_mixer for OSX, or at least the smpeg component of it, needs to be recompiled with additional linker flag '-no_compact_linkedit ' in order to be usable on 10.5 as advertised. I've tried to do it but have gotten stuck. * Thoughts? Has anyone else encountered a similar issue? _______________________________________________ SDL mailing list http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org |
|||||||||||
|