有没有办法在10.6机器上获取/使用OS X 10.3 Cocoa SDK?

有没有办法在10.6机器上获取/使用OS X 10.3 Cocoa SDK?,cocoa,macos,sdk,Cocoa,Macos,Sdk,在你问之前,是的,我有一个非常好的理由想要在10.3上运行一些东西。这是一个非常小的内部项目,必须在一个非常重要的人的机器上运行,因为一个很好的理由,它不能升级 10.6 DVD似乎没有提供安装10.3 SDK的选项,只有10.4+。我在苹果的网站上也找不到 我找到了关于如何通过Xcode可选安装在10.5上安装它的技巧,但10.6似乎不是这样? 它是不兼容的,还是因为太旧而不提供?我必须使用早期版本的Xcode吗?我可以尝试通过安装它吗?可能是10.6不支持10.3 SDK,因为10.6仅限

在你问之前,是的,我有一个非常好的理由想要在10.3上运行一些东西。这是一个非常小的内部项目,必须在一个非常重要的人的机器上运行,因为一个很好的理由,它不能升级

10.6 DVD似乎没有提供安装10.3 SDK的选项,只有10.4+。我在苹果的网站上也找不到

我找到了关于如何通过Xcode可选安装在10.5上安装它的技巧,但10.6似乎不是这样?


它是不兼容的,还是因为太旧而不提供?我必须使用早期版本的Xcode吗?我可以尝试通过安装它吗?可能是10.6不支持10.3 SDK,因为10.6仅限intel。此外,10.3不支持英特尔。请记住,10.4是第一个支持intel的操作系统,这就是为什么10.6最早支持intel的操作系统。但是,我可能错了。

如果10.3系统运行的是10.3.9,您可以将部署目标设置为10.3并坚持gcc-4.0,而不是10.6默认值gcc-4.2,从而在10.6的基础上使用可选的10.4u SDK。用于OS X的python.org安装程序就是这样构建的,也就是说,一个可在10.3.9到10.6上运行的可执行文件(尽管目前,在10.6上构建所有变体仍然存在一些问题,因此仍然使用10.5)。此外,python构建主要使用Carbon框架,而不是Cocoa,它们不使用Xcode来管理产品的构建。如果您无法让Xcode直接执行此操作,则可以从命令行生成

export MACOSX_DEPLOYMENT_TARGET=10.3
/usr/bin/gcc-4.0 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc ...

您不需要Mac OS X 10.3 SDK来构建Mac OS X 10.3。只需安装可选的Mac OS X 10.4(通用)SDK,然后:

  • 将基本SDK设置为Mac OS X 10.4(通用)SDK
  • 编译器版本设置为GCC 4.0
  • 将PowerPC体系结构的Mac OS X部署目标设置为Mac OS X 10.3(使用构建设置条件)
  • 小心避免使用Mac OS X 10.3以外的任何API
这应该足以构建一个在MacOSX10.3.9上运行的MacOSX应用程序,即使是在SnowLeopard上

10.3.9版本号很重要;如果在这个应用程序中使用任何C++,Mac OS X103.9是第一个版本(也是唯一的10.3版本),它包含共享库形式的标准C++库,这是GCC 4或更高版本所需要的。否则,您必须使用GCC 3.3,雪豹上的Xcode 3.2既不包含也不支持GCC 3.3


另一方面,C和Objective-C代码甚至可以在Mac OS X 10.3的早期版本上运行。我想不出一个不这样做的理由,但我自己也没试过。即使是坚持使用6年前版本的Mac OS X的人也会使用最新版本,对吗?

您仍然可以使用雪豹为PowerPC Mac构建,甚至构建仅限PowerPC的软件。它成功了!问:是否有专门的10.4通用SDK,或者您是否将基本SDK设置为10.4,并将体系结构设置为32位通用?每个人使用的Mac OS X 10.4 SDK的传统名称是“Mac OS X 10.4(通用)”,因为它支持为英特尔和PowerPC构建;Tiger附带的原始Mac OS X 10.4 SDK仅支持PowerPC,因为基于Intel的Mac尚未发布。将基本SDK设置为10.4