XCode 5 依赖项警告 - 混淆 iOS 部署目标和架构

Posted

技术标签:

【中文标题】XCode 5 依赖项警告 - 混淆 iOS 部署目标和架构【英文标题】:XCode 5 dependencies warning - confuses iOS deployment targets and architectures 【发布时间】:2014-05-30 13:42:28 【问题描述】:

我在这里搜索过,阅读了 9 个不适用的答案,验证了我的设置,手动检查,清理,重建和存档。我也尝试将 armv6 添加到部署目标,同样的事情。 该应用在物理 Iphone 4 和 5 设备上运行良好,但我无法发布它...

Dependency Analysis Warning: ios deployment targets lower than 4.3 are not supported (current IPHONEOS_DEPLOYMENT_TARGET = "4.0", ARCHS = "armv7").

(注意:经过一些思考和测试,基本问题在这个问题的底部。)

构建设置:

架构:标准(armv7、armv7s)

基础 SDK:最新 (iOS 7.0)

支持的平台:iOS

iOS 部署目标:iOS 5.1

目标设备系列:iPhone

Info.plist:

Iphone 环境:是

没有部署目标条目(这是导致链接答案中出现警告的原因)

但我仍然收到警告。

如您所见,这与构建设置不同。我点击了警告,但它没有告诉我什么可以告诉 XCode 覆盖构建设置,所以我对此无能为力。

我该如何开始解决这个问题,在哪里查看,检查什么?

编辑: 换句话说,this 和 this 不适用,因为我不为低于 4.3 的部署目标构建。我只需要 XCode 来使用 Build Settings 中设置的实际部署目标和架构。

更新:所以这就是我似乎遇到的问题:我在 info.plist 中添加了必需的设备功能 armv7(仅),Apple 禁止我对应用程序引入这样的要求没有它们(用户无法升级)。但是如果苹果让我为这些用户构建,那就太好了……

除非只是 XCode 没有正确读取目标导致我无法这样做。

--> 所以问题变成了:有没有办法强制将 IPHONEOS_DEPLOYMENT_TARGET 设置为 >= 4.3?

【问题讨论】:

好的,我发布之后又出现了两个问题,让我检查一下。 不。请参阅上面的修改。 【参考方案1】:

您可以做几件事来看看这是否能解决您的问题。

    进行干净的构建 XCode --> 产品 --> 清洁

    关闭 XCode

    转到您的派生数据目录并从那里删除所有内容

~库~/Developer/Xcode/DerivedData

4- 这可能是一个多余的检查。尽管您已将目标设置为 5.1,但无论如何都要检查一下。

5- 启动 Xcode 并再次尝试构建。

【讨论】:

尝试了这些步骤,警告仍然存在。【参考方案2】:

尽管我知道我没有在任何资源中输入字符串 IPHONEOS_DEPLOYMENT_TARGET,但我还是一时兴起在项目管理器中搜索了它。原来XCode没有使用在项目管理器中点击项目编译应用时显示的设置...

我能够以某种方式覆盖可见设置的隐藏设置的唯一方法是单击搜索结果。

所以,如果您收到此警告: iOS deployment targets lower than 4.3 are not supported,请执行以下操作:

    Cmd+Shift+F,搜索 IPHONEOS_DEPLOYMENT_TARGET。

    单击目标为

    将它们设置为至少 5.0。

注意:不要将 armv6 添加到 Architectures,将其设置为 Standard (armv7, armv7s)

【讨论】:

以上是关于XCode 5 依赖项警告 - 混淆 iOS 部署目标和架构的主要内容,如果未能解决你的问题,请参考以下文章

Xcode - 5.0.2, iOS 检查依赖项 没有要编译的架构 (ARCHS=i386, VALID_ARCHS=armv7 armv7s)[iOS 静态代码分析 - Jenkins]

禁止 Xcode 中的 `deprecated` 警告

使用 Proguard 混淆 WAR 文件

Xcode 中的 iOS 9 警告 - 此文件设置为为比项目部署更早的版本构建。功能可能受到限制

使用 CocoaPods 时的 Xcode 12 部署目标警告

Xcode 7 警告!是为比被链接 (5.1) 更新的 iOS 版本 (5.1.1) 构建的