问题描述
说我将基本SDK设置为7,这是什么意思?这可能意味着该应用程序将在iOS 7上运行.但这就是iOS部署目标.
Say I set base SDK to 7, what does it mean? It could mean that the app would run on iOS 7. But that's what iOS deployment target is for.
为什么还要在项目和目标中同时指定这3个值.这没有道理.为什么要两次指定相同的内容?
Also why do I specify those 3 values in both project and target. It doesn't make sense. Why specify the same thing twice?
推荐答案
基本SDK是您针对其构建应用程序(即包含文件以及库文件和框架)的基础.如您所说,除了基本sdk> =部署目标外,它不会影响部署目标.
The base SDK is what you build your app against (i.e. include and library files and frameworks). As you say, it doesn't affect the deployment target, except that base sdk >= deployment target.
您可以在2个级别上指定构建设置,因为每个项目可以有多个目标,并且可能不希望所有目标都使用相同的设置.项目级别的设置将覆盖默认设置,而目标级别的设置将覆盖项目级别的设置.
You specify build settings on 2 levels as each project can have multiple targets and you might not want the same settings for all targets. The project-level settings override the default settings and the target-level settings override the project-level settings.
例如,我有同时具有OSX和iOS目标的项目,有些是ARC,有些是MRR.如果无法指定Xcode允许的粒度级别的构建设置,则每个项目都必须有不同的项目.
For example I have projects with both OSX and iOS targets and some are ARC and some are MRR. I'd have to have different projects for each if I was unable to specify build settings with the level of granularity that Xcode allows.
这篇关于xcode中的Base SDK,iOS部署目标,Target和Project的含义是什么的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!