在为MacOSX分发可执行文件时,我如何知道它将在哪些版本上工作?发布时是否有任何特殊的构建步骤?

在为MacOSX分发可执行文件时,我如何知道它将在哪些版本上工作?发布时是否有任何特殊的构建步骤?,macos,gcc,linker,release,compatibility,Macos,Gcc,Linker,Release,Compatibility,我刚刚用GCC(GCC main.c)为MacOSX构建了我的程序。在分发可执行文件之前,是否有任何特殊的构建步骤,或者它是否会自动在所有Intel MacOSX系统上工作?应用程序支持的OS X版本由SDK选择和部署目标设置决定。您选择的SDK(10.4、10.5或10.6)将决定运行所需的OSX版本。换句话说,如果您选择10.5SDK,您将无法使用10.6-only例程,因为XCode/gcc不知道这些例程。此外,您可以选择“部署目标”来指定要支持的最早OS X版本(并有条件地使用新API以

我刚刚用GCC(GCC main.c)为MacOSX构建了我的程序。在分发可执行文件之前,是否有任何特殊的构建步骤,或者它是否会自动在所有Intel MacOSX系统上工作?

应用程序支持的OS X版本由SDK选择和部署目标设置决定。您选择的SDK(10.4、10.5或10.6)将决定运行所需的OSX版本。换句话说,如果您选择10.5SDK,您将无法使用10.6-only例程,因为XCode/gcc不知道这些例程。此外,您可以选择“部署目标”来指定要支持的最早OS X版本(并有条件地使用新API以正确支持旧系统)

至于什么SDK中有什么API,它们都在文档和头文件中清楚地标记为它们最初出现在什么操作系统中

请在此处查看灰熊的详细信息:

如果您没有使用XCode,请参阅“配置基于Makefile的项目”一节,了解如何从命令行选择SDK和部署目标