Hi,
I have some C++ code which is built on snow leopard and runs on Tiger, Leopard, Snow Leopard and Lion. I am using calls from the 10.6 SDK and successfully avoiding them on Tiger at run time, so I'm pretty sure I've got my environment set up more or less right.
One call I need is fcntl. If I build on Tiger it works on Tiger. If I build on snow leopard it crashes on Tiger. It crashes at run time on the call to fcntl and the error is that _fcntl@unix2003 can't be found in libSystem.B.dylib.
I'm not sure how to go about fixing this - weak linking deals with an API that doesn't exist, but I don't understand how to deal with an API that seems to have changed? moved? something? I know it exists somewhere on Tiger because the code compiles and runs there...
Does anyone know how to call fcntl on Tiger when build against the 10.6 SDK?
Thanks,
Andy
I have some C++ code which is built on snow leopard and runs on Tiger, Leopard, Snow Leopard and Lion. I am using calls from the 10.6 SDK and successfully avoiding them on Tiger at run time, so I'm pretty sure I've got my environment set up more or less right.
One call I need is fcntl. If I build on Tiger it works on Tiger. If I build on snow leopard it crashes on Tiger. It crashes at run time on the call to fcntl and the error is that _fcntl@unix2003 can't be found in libSystem.B.dylib.
I'm not sure how to go about fixing this - weak linking deals with an API that doesn't exist, but I don't understand how to deal with an API that seems to have changed? moved? something? I know it exists somewhere on Tiger because the code compiles and runs there...
Does anyone know how to call fcntl on Tiger when build against the 10.6 SDK?
Thanks,
Andy