iOS BUG日志(2)

分析解决_OBJC_CLASS_$_某文件名", referenced from:问题


-1、如果这文件名是需要引用系统的某些静态库才能运用的

比如:"_OBJC_CLASS_$_GLKViewController", referenced from:

_OBJC_CLASS_$_ViewController

这种情况的报错是因为GLKViewController,需要一个GLKit的库来支持

而解决的方法也很简单,直接在工程中添加你需要的库文件就可以了


-2、重复编译。

就是可能你之前某些文件添加两次,删除时系统没有默认删除在Search Paths里的地址路径

解决方法也就是将里面Library Search Paths 中没有用到的地址删除


-3、还有种可能,出现在静态库生成上面。

系统编译生成的静态库有两个,一个给真机用,另一个模拟器用的。

当你在真机测试时导入模拟器静态库,运行就会报错;同样在模拟器测试时调用真机静态库也会报错。

解决这一问题也很简单,就是将两个静态库合并,生成一个兼容的静态库。

通过Show in finder 找到两个静态库文件,将两个文件复制到一个文件夹里,当然要进行重命名啦,否则就覆盖了。

下面打开终端,CD到存放两个文件的文件夹。

通过lipo[空格]-create[空格] [真机静态库文件名][空格] [模拟器静态库文件名][空格]-output[空格] [合并后的文件名]

再把这个生成的文件导入你的工程就可以了。

你可能感兴趣的:(iOS BUG日志(2))