[openal] Questioning about linking to OS X 10.4 SDK

Lubo Diakov lubodiakov at gmail.com
Wed Nov 5 15:35:38 EST 2014

Alex Szpakowski <aszpakowski at gmail.com>
> Is there a reason you want to use the 10.4 SDK? If you just want runtime
> compatibility with systems running 10.4, you should set the Deployment
> Target (which is separate from the currently installed SDK.) ...

Thanks for the link, I had come accross that before. I realize that
Deployment Target rather the Base SDK (SDKRoot) is the recommended way
to get 10.4 runtime compatibility. Through a combination of my
inexperience, and I suspect various gotchas and functionality that
doesn't work quite as documented, I was unable to get it going that
way. Even setting a global shell variable like export
MACOSX_DEPLOYMENT_TARGET=10.4 it still links to version 111 of
LibSystem.B.dylib when using the 10.5 SDK, thus a library that only
runs/links in 10.5, but not 10.4. So using the 10.4 SDK was a
workaround to that. I've often come accross binaries linked on 10.6
which promise 10.5 runtime compat. and fail just like that. The weak
linking on these older versions of OS X is quite hit and miss, and
mostly miss, let's be honest:

dyld: unknown required load command 0x80000022 is often the console
output when it crashes

Further reading:

If there is a way to get it working I'd like that, but since
compiling/linking to the 10.4 SDK gets the result I want I'm not too
worried on that account.

Chris Robinson <chris.kcat at gmail.com>
> Starting with 1.16, OpenAL Soft doesn't use OSX's OSAtomic methods
> because they're too inflexible (in particular, OSAtomicCompareAndSwap*
> doesn't report what the checked value was like every other API does; it
> only returns if the compare/swap was successful or not). Instead, it now
> only uses C11's atomic methods if available, otherwise falling back to
> GCC intrinsics (works on Clang too), or x86/x86_64 inline assembly. Or
> Windows' methods, but OSX obviously won't have those.
> AFAIK, OSX uses a version of GCC or Clang, so it should still work with
> either the intrinsics or inline assembly. Otherwise, bringing back the
> OSAtomic calls will require finding some way around CompareAndSwap's
> limitations.

Since you mention C11 for openal-soft version 1.16 (and newer?) does
it also require newer versions of gcc? I suspect so, as this 10.5 has
nothing newer than gcc 4.2 and the build halts.
I guess 1.15.1 is the end of the road even for 10.5 unless using a
newer compiler like gcc 4.8 or clang from MacPorts, for example? If it
can work I'd like to know how, but it seems unlikely.

Любомир Гаврилов Дяков
lubodiakov at gmail.com

More information about the openal mailing list