2010-10-04 37 views
0

我最近遇到了一些麻烦,那就是用最新的iOS 4.1 SDK构建应用程序,并在设备上使用iOS 3.x运行它。应用程序在4.x设备和iPad上运行正常,但在运行较旧的3.x iOS的设备上发生崩溃。在iOS 3.x上使用XCode 3.2.4和iOS SDK 4.1编译运行应用程序时遇到的问题

问题似乎在链接器中,因为崩溃显然是由调用项目中使用的第三方库引起的。链接器(甚至编译器)的怀疑是由事实支持的,当我使用较旧的3.1.3 SDK构建应用程序时,它可以按预期工作。

我的发行配置使用iOS 4.1作为基本SDK和iOS 3.0作为部署目标平台,使用LLVM GCC 4.2进行编译。我也试过GCC 4.2编译器,但它也没有帮助。

我发现在这个版本的SDK中存在链接器/编译器中的一些错误,但没有提出的解决方案为我工作。

我非常需要解决这个问题,所以任何帮助都非常感谢。

感谢大家的任何提示或建议。

+1

你需要接受一些你的问题的答案。您只需按下您认为可帮助您解决问题的答案旁边的复选标记即可。这将奖励花时间帮助你的用户,你也会得到一个小小的奖励。 – Emil 2010-10-04 14:22:50

回答

0

只是为了让你知道,如果你正在使用类似的iAd框架,你需要添加这个框架为目标信息弹出“弱依赖” :-)

如果它是一个LIBRAIRIE,能你列出他们?

祝你好运!

+0

嗨,感谢您的回复,但事实并非如此,没有使用iAd fw。该应用程序使用Three20和一些库来处理Zip档案。无论我将其定义为弱还是必需的依赖关系,结果都是一样的。正如我上面写的,它适用于iOS 4.x和3.2设备,但不适用于iOS <3.2。首先调用链接库会导致崩溃。当我使用3.1.3 SDK构建应用程序时,它通常在3.0上运行。我认为它需要调整一些链接器或编译器的标志,但我无法弄清楚什么和如何?! – Matthes 2010-10-04 15:29:02

0

我想我回答这个问题已经太晚了。但仍然 - 如果你有3.1.3设备,通过加载应用程序和开发人员配置文件进行系统内调试会给你造成崩溃的原因。当我的应用在4.0+设备上正常工作时遇到了类似的问题,但在启动时我立即在3.1.2设备上尝试它时立即崩溃。我使用开发人员配置文件对其进行编译,然后进行系统内调试。我发现我使用的是iOS 3.2引入的UIPopoverController类,因此我的3.1.2失败了。对此进行必要的检查可以解决我的问题。

希望有所帮助。

相关问题