iPhone上是否有最大可执行文件或可执行文件+共享对象?我一直在开发一个应用程序,它在启动时或在SIGSYS执行初期崩溃。从程序中删除代码有所帮助,虽然构造数据所以代码根本不执行不会。
这可能是某种类型的内存损坏,但是当我用-Os而不是-O2或-O3编译时,我的可执行文件的大小从5.15MB下降到3.60MB并且应用程序运行完美。当然,我也有一堆库。
我想知道,iPhone上的可执行代码的大小是否有限制?或者我只是“变得幸运”并在使用-Os时屏蔽内存损坏?
答案 0 :(得分:2)
如果有最大尺寸,则无法使用5.15或3.60 MB应用程序文件进行操作。您的应用中存在其他错误。
你很幸运。
答案 1 :(得分:0)
你可能只是内存耗尽。你有记忆警告吗?
答案 2 :(得分:0)
通过应用程序商店提供最大可执行文件大小,但硬件本身没有任何异常限制。
您的问题最有可能出现在您的某个库中。根据您对应用程序复杂性的描述,这对我来说并不是一个有用的观察。
考虑到编译器选项的模式,我将疯狂地猜测你有一个有问题的库,而更严格的编译导致该代码被排除。
在远景的标题下,您可能还想查看图像等资源。在过去的几年中,我看到了几个看似无害的资源在加载时会引发致命错误的情况。
答案 3 :(得分:0)