基于这个问题
我读了选定的答案,但仍然不明白,所以我做了一个示例项目
在测试项目中,我从主项目和静态库的链接库链接库和文件导航中删除了所有框架(基本上也包括Foundation.framework和UIKit.framework),基本上,两个项目都链接到0个框架。
问题是
感谢您的评论。
PS通过工作,我的意思是我可以在模拟器上运行,并且可以存档主项目而没有任何错误。
编辑25/07/2014
我尝试使用正在开发的真实应用程序,它是相同的。
我的应用程序的所有功能仍按预期运行。我不明白
检查您的项目构建设置。在LLVM 5.1 —语言—模块下面,您应该看到选项“自动链接框架”。就您而言,这听起来像是默认设置为“ YES”。
在这种情况下,当您引用编译器不知道的类时,不会产生错误,而是会找出哪个Framework包含该类并进行链接。在您的代码中,它将MKMapView
是触发链接的MapMap类或其他MapKit类之一。
编辑:从相关的“新功能?” 文件:
为代码模块导入的框架启用了自动链接。当源文件包括来自支持模块的框架的标头时,编译器会在目标文件中生成额外的信息以自动链接至该框架。结果是,在大多数情况下,使用支持模块的框架API时,无需指定框架的单独列表即可与目标链接。
看它的另一种方式是,编译器是足够聪明,突变#import
,以@import
当框架已经建立恰当。所有系统框架都已经存在。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句