On Jun 21, 2008, at 6:39 AM, turbo3d wrote: in MacOSX10.4u.sdk OSServices.h says
#include <OSServices/OpenTransport.h> with no conditions
in MacOSX10.5u.sdk OSServices.h says
#if MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_4 #include <OSServices/OpenTransport.h> ... #endif
So, as far as OpenTransport is concerned :
targeting 10.4 and using MacOSX10.4u.sdk is OK but targeting 10.4 and using MacOSX10.5u.sdk does not support OpenTransport.
What is the reason of this ?
Thanks JP
Hi, there,
I think that the answer may lie in that OpenTransport is perhaps going to become deprecated. I say this not because I have any insider knowledge, but because of the documentation. For instance:
Open Transport is the Mac OS 8 and 9 API for accessing TCP/IP networks, such as the Internet, at the transport level. For Mac OS X, Apple provides Open Transport as a compatibility library to ease migration of legacy applications. As such, Mac OS X does not support the entire Open Transport API.
So it serves no real function (in Apple's eyes) now other than to provide legacy support for migrating older apps. Those older applications are still there, but are fewer and farther between. Also:
In new Mac OS X applications you should not use Open Transport but should instead use BSD Sockets or, when possible, higher-level Core Services and Core Foundation APIs such as CFNetwork, CFURL, CFSocket, and CFStream. You can also use Cocoa networking classes such as NSURL, NSURLHandle, and NSNetService.
This, too, signals nearly inevitable deprecation in the future. I wouldn't be surprised if Open Transport is PPC-only and runs under Rosetta under Mac OS X Leopard now -- and *if* Snow Leopard *does* do away with Rosetta and PPC support, then Open Transport will be gone forever next year (or whenever Snow Leopard is released).
Are there any possible alternatives for your situation?
Cheers, Andrew
|