从Xcode 4.3升级到Xcode 4.4后,我开始在构建我的iPhone应用程序时遇到以下错误:
ld: section __objc_const (address=0x0010C720, size=7265990088) would make the output executable exceed available address range for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
内存地址和数字对我来说没有任何意义,但它们在清理和重建过程中保持一致。我不清楚如何找到他们可能引用的内容。
代码确实并且仍在XCode 4.3中编译。
有没有人知道如何跟踪导致此错误的原因?
答案 0 :(得分:2)
我有同样的错误。幸运的是,我可以回想起它出现的那一刻,回滚并比较修改。这是Google Analytics GAI
课程中包含静态方法的类别。我不知道它为什么会发生,因为项目中的其他类别工作得很好,但希望它也可以帮助别人。
答案 1 :(得分:1)
您可以在链接地图文件中查看所有符号(包括全局变量)的大小:
-map -Xlinker -/path/to/linkmapfile.txt
。它位于项目的DerivedData文件夹中。所以这可能有助于缩小问题范围。