Xcode编译时报_objc_class_$_"XXXXXX ",referenced from解析之一

       今天在导入一个第三方库时,用真机调试一直正常,改用模拟器,突然报了这个错误,一时纳闷,只好找朋友求助。从朋友那里得知,这是因为所用的SDK不支持X86_64造成的,因为模拟器和真机的架构是不一样的,那么我们怎么知道报这个错时是因为SDK不支持X86_64的原因呢,且听我细细讲解。



首页打开你的终端,输入lipo-info,然后将你sdk中的.a文件拖入其中,这时我们看到了这样一行命令(sdk中.a的路径)



然后点回车,我们看到下图



在绿框中,我们清晰的看到,没有X86_64的显示,因而断定不支持模拟器调试,模拟器调试报错。

没办法,只好找做sdk的技术人员,他们也很给力,一连给了3个.a文件,有支持真机的,支持模拟器的,有真机模拟器都支持的。不过这里提醒大家一点,有模拟器真机都支持的sdk固然方便,但是会造成ipa包的大小变大,如果app的大小比较在乎,建议调试时用都支持的,打包上线时再换成只支持真机架构的.a文件。

好了,让我们在终端用同样的方法来看一下新的.a文件所支持的架构


绿框中我们看见,可支持X86_64,哇,连i386都支持了,真够意思!~替换掉.a,我们的问题就解决了。如果你是单人开发,用不到svn,可以到此就结束了。如果你是多人开发,考虑到替换.a文件会造成svn的一系列问题,请看我的下一篇博客。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值