首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我可以直接在只为armv6和armv7构建的iPhone-5 (armv7s) iOS应用程序上进行调试吗?

我可以直接在只为armv6和armv7构建的iPhone-5 (armv7s) iOS应用程序上进行调试吗?
EN

Stack Overflow用户
提问于 2013-05-06 15:22:40
回答 2查看 586关注 0票数 4

我们的iOS应用依赖于目前仅适用于armv6+armv7的商业第三方静态库。出于这个原因,我无法为armv7s构建我们的应用程序。只有armv6+armv7+simulator。

我们的构建是在iPhone-5上部署和运行的,没有问题--它运行armv7代码。

然而,我找不到直接在iPhone5上调试的方法。当我连接iPhone-5并尝试构建以进行调试时,我得到的链接器错误如下:

代码语言:javascript
复制
"No architectures to compile for (ONLY_ACTIVE_ARCH=YES, active arch=armv7s, VALID_ARCHS=armv7)."

最初,我认为可能是我为调试配置设置的"Build only active architecture“导致Xcode在连接iPhone-5 (armv7s)时不会尝试为armv7构建。

但是当我将其设置为"NO“(让Xcode构建所有支持的体系结构)时,我得到了一大堆构建错误(摘录如下-我们有许多目标,每个目标都会发出类似的错误)。

代码语言:javascript
复制
=== BUILD NATIVE TARGET ASPCommon OF PROJECT ASPCommon WITH CONFIGURATION Debug ===
Check dependencies
No architectures to compile for (ARCHS=i386, VALID_ARCHS=armv7).

** BUILD FAILED **

The following build commands failed:
    Check dependencies
(1 failure)
Command /bin/sh failed with exit code 65

这个目标没有依赖项,它只在iOS SDK框架上构建,并且在连接iPad 4/iPhone5以外的任何设备时都可以很好地构建。

最后我的问题是:在armv7s设备上直接调试armv7代码是可能的吗?如果可能的话,我什么时候在我的构建设置中做错了而破坏了它?

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2014-05-22 23:15:07

简短的回答是:不。我相信你正在尝试做的事情是不可能的!需要为armv7s重建第三方静态库。继续跟踪他们,直到他们更新他们的库。

票数 0
EN

Stack Overflow用户

发布于 2014-05-25 17:34:38

哦,我忘了我发了这个问题…

最终,我能够在所有iOS设备上进行调试,因为问题的根源既不在ARMv7唯一的库中,也不在我的项目/目标设置中。

问题出在我用来创建iOS“框架”目标的iOS Xcode模板中。(iOS Universal framework from Karl Stenerud的旧版本)。

我们的代码库很大,它的许多主要代码块服务于应用程序的MacOS和iOS版本,另外,我们希望将这些主要代码块封装为“SDK”,包括库、头文件、资源和文档。所以-我们一直在使用框架目标。由于iOS没有内部的“框架”目标模板,所以我们使用了第三方模板。

这个模板使用构建脚本,它有一个bug,在某些情况下从构建中省略了平台,因此导致我们的构建错误,并且无法调试。

最后一句话-模板的更新消除了这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16393969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档