最近写小直播项目,运行 腾讯云的实例demo时在模拟器debug模式下编译成功,在模拟器release模式下编译失败,主要是跟第三方类库相关的错误,但是 在发布模式,也就是小锤子release模式下编译就会成功,查看了相关博客,发现问题的解决方案,问题截图如下面所示:
把链接器的错误信息翻来覆去的看,无非原因是相关的库没导入,或者指令体系结构不正确,但是按照要求改了多次依然无效,最后无意间搜索了一下ld:warning:ignoring file这行警告信息,根据提示,修改了编译选项:Build Settings->Build Options->Enable BitCode->NO 设置以后,又根据网上搜索到的答案
可能原因二:正如这个错误提示所指出的那样,缺少了i386架构的东西。这很可能是由于项目中包含的静态库是被编译用于真机测试的,大家都知道苹果手机cpu是arm架构,而mac笔记本(当然也包括运行于其上的iphone-simulator)是intel架构。所以当这个静态库被编译用于device的时候,在目标为simulator下的编译是会报错的。
解决方法一:直接真机调试。
解决方法二:重新为simulator编译静态库,然后有一个更高端的解决办法,就是将两种架构的静态库合并: