(1)Xcode窗口的左上角设置:
(2)“基础SDK”:
(3)“部署目标”:
(4)架构:
这是我的问题:
对于(2)和(3),我认为理解起来更清楚.这些是我理解的:
(2)这标识了我的发展.
(3)这标识了我的应用程序将使用的 *** 作系统版本.
请告诉我,我是否正确……
但我无法理解(1).我只知道如果我在这里选择32位,我就无法使用ARC.
(4),它们是什么?它们代表cpu的位宽吗? (1)和(4)之间有什么区别?
解决方法 我会不按顺序解释你的物品.基础SDK
这定义了您可以使用的最大的API集.您可以使用此处标识的版本号中存在的任何内容.例如,如果使用10.8 SDK,则可以使用 – [NScolor CGcolor](在10.8中引入),但不能使用 – [NSData base64EncodedDataWithOptions:](10.9中的第一个公共).
(当然,您也可以使用比该版本更旧的任何内容.)
因此,SDK版本也称为可用性宏中的“max [imum] allowed”版本.
当Apple更改API的行为时,SDK版本有时也会变得很重要.当他们这样做时,他们有时会保留与旧SDK相关联的应用程序的旧行为.这称为“检查后或检查”,如“检查您是否在10.8 [SDK]或更高版本”. (概念和术语早期Xcode为每个 *** 作系统版本都有SDK.它过去只是通过你运行Xcode和构建的任何 *** 作系统.)
部署目标
这是您需要的最低 *** 作系统版本.如果在先前版本中删除了某些内容(很少见,但它确实发生了),则无法使用它.
这往往会影响链接时间和运行时间,而不是编译时间.例如,如果您的部署目标是10.5或更早版本,ARC将无法工作.
因此,部署目标也称为可用性宏中的“min [imum] required”版本.
Info.pList还可以指定最低 *** 作系统版本.现在,这是默认设置,它是通过宏扩展设置到部署目标.
架构构建设置
不同的cpu具有不同的体系结构.从本质上讲,它们适用于广泛的类别,例如:
> PowerPC 32位(ppc)
> PowerPC 64位(ppc64)
>英特尔32位(i386)
> Intel 64位(x86_64)
> ARM 32位
> ARM 64位
(不再支持PowerPC体系结构.您可以将它们添加到体系结构列表中,如ppc和ppc64,但Xcode将忽略它们.)
Mac现在拥有英特尔处理器.几乎所有的Intel Mac都有64位处理器.如果你想在2006年之前支持Mac,你只需要担心32位英特尔.这可能比它的价值更麻烦.
iOS设备运行ARM处理器,大多数仍然是32位. A7(iPhone 5S,iPad Air,带Miniina显示屏的iPad Mini)为64位.但是,如果你在iOS模拟器上运行,它在你的Mac上运行(它是模拟器,而不是模拟器),所以它将针对英特尔架构(以前总是i386,但如果需要可能现在可能是x86_64).
“Xcode窗口的左上角设置”
这是构建方案和运行目标. (是的,它是一个d出式菜单中的两个单独的东西.实际上,它是一个控件中的两个单独的d出菜单.试试吧.)
“我的Mac 64位”是运行目的地.您将在Mac上运行64位版本的应用程序,而不是在iOS模拟器或iOS设备上运行.您对Mac应用程序的选择仅仅是您要运行的体系结构,它们的行为应该相同(显然,这是您有时需要测试的内容).
iOS应用程序在这里有更多选择.有些应用程序仅适用于iPhone,有些仅适用于iPad,有些是通用的,有些可能适用于32位和64位架构.您将为每个可以运行的外形和架构组合(例如,iPhone模拟器64位)提供模拟器.您还可以选择在已连接并启用开发的任何iOS设备上运行您的应用程序(当您在Xcode的视线中插入设备时会收到此提示).
TL; DR
>部署目标是您的应用程序将运行的最低 *** 作系统版本.> Base SDK是您可以使用的最高 *** 作系统版本.如果它还不存在,它根本不存在.>体系结构是您的应用程序将运行的硬件集.> Run Destination是您要在Xcode中运行它的硬件.
总结以上是内存溢出为你收集整理的objective-c – 关于Xcode构建设置的杂项混淆(64/32位,SDK版本等)全部内容,希望文章能够帮你解决objective-c – 关于Xcode构建设置的杂项混淆(64/32位,SDK版本等)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)